| 1 | | = Advanced Reports |
| | 1 | = Напредни извештаи од базата (SQL и складирани процедури) |
| | 2 | |
| | 3 | == Најизнајмуван автомобил во текот на изминатите два месеци земено во однос на тековниот датум |
| | 4 | {{{#!sql |
| | 5 | select v.brand , |
| | 6 | v.chassis_number, |
| | 7 | c.vehicle_id, |
| | 8 | m.model_name, |
| | 9 | m.color,c3.company_name, |
| | 10 | count(*) as nor from contracts c |
| | 11 | join vehicles v on v.vehicle_id = c.vehicle_id |
| | 12 | join models m on v.model_id = m.model_id |
| | 13 | join companies c3 on c3.company_id = v.company_id |
| | 14 | where (c.signed_date - interval '2 months')<= c.signed_date and c.signed_date <= now() |
| | 15 | group by c.vehicle_id , v.brand , v.chassis_number , m.model_name , m.color, c3.company_name |
| | 16 | having count(*) = (select max(nor) from |
| | 17 | (select vehicle_id, count(*) as nor from contracts c2 group by vehicle_id) contracts) |
| | 18 | }}} |
| | 19 | |
| | 20 | == Локации подредени според тоа колку автомобили има во тој град место и која компанија го нуди |
| | 21 | {{{#!sql |
| | 22 | select l.city , count(l.city) as num_of_vehicles from vehicles v |
| | 23 | join locations l on v.location_id = l.location_id |
| | 24 | group by l.city |
| | 25 | order by num_of_vehicles desc; |
| | 26 | }}} |
| | 27 | |
| | 28 | == Број на автомобили кои што ги нуди една компанија во некој град |
| | 29 | {{{#!sql |
| | 30 | select c.company_name, count(vehicle_id) as counter from vehicles v |
| | 31 | join locations l on l.location_id = v.location_id |
| | 32 | join companies c on c.company_id = v.company_id |
| | 33 | where l.city = 'Skopje' |
| | 34 | group by c.company_id , c.company_name; |
| | 35 | }}} |
| | 36 | |
| | 37 | == Регистрации на сите автомобили што биле изнајмени повеќе од десет дена |
| | 38 | {{{#!sql |
| | 39 | select v.brand, m.model_name, r.plate_num from vehicles v |
| | 40 | join models m on v.model_id = m.model_id |
| | 41 | join registrations r on v.registration_id = r.registration_id |
| | 42 | join contracts c on c.vehicle_id = v.vehicle_id |
| | 43 | where c.end_date - c.signed_date >= 10 |
| | 44 | }}} |
| | 45 | |
| | 46 | == Компании кои што имаат направено промет поголем од просечниот од сите компании заедно од издавање на автомобили |
| | 47 | {{{#!sql |
| | 48 | select c.company_name, |
| | 49 | sum(v.daily_rental_price) as prihod |
| | 50 | from vehicles v |
| | 51 | join companies c on v.company_id = c.company_id |
| | 52 | group by c.company_name |
| | 53 | having sum(v.daily_rental_price) > AVG(V.daily_rental_price) |
| | 54 | }}} |