| | 31 | |
| | 32 | == За секое продажно место да се најде потрошувачот кој направил најмногу нарачки, адресата на соодветниот потрошувач и колку нарачки направил во продажното место == |
| | 33 | |
| | 34 | {{{#!sql |
| | 35 | create view najveren_potrosuvac_za_sekoe_prodazno_mesto as select k.ime as ime_potrosuvac, pr.ime as ime_mesto, l.adresa as adresa_potrosuvac, l.broj as broj_adresa_potrosuvac, count(distinct n.naracka_id) as broj_naracka |
| | 36 | from korisnik k join potrosuvac p on k.korisnik_id = p.korisnik_id |
| | 37 | join naracka n on n.potrosuvac_id = p.korisnik_id |
| | 38 | right join prodazhnomesto pr on pr.id_mesto = n.id_mesto |
| | 39 | left join lokacija l on l.lokacija_id = p.lokacija_id |
| | 40 | group by k.korisnik_id, pr.id_mesto, l.adresa, l.broj |
| | 41 | having count(distinct n.naracka_id) |
| | 42 | = |
| | 43 | (select count(distinct nn.naracka_id) |
| | 44 | from korisnik kk join potrosuvac pp on kk.korisnik_id = pp.korisnik_id |
| | 45 | join naracka nn on nn.potrosuvac_id = pp.korisnik_id |
| | 46 | right join prodazhnomesto prr on prr.id_mesto = nn.id_mesto |
| | 47 | left join lokacija ll on ll.lokacija_id = pp.lokacija_id |
| | 48 | where pr.id_mesto = prr.id_mesto |
| | 49 | group by kk.korisnik_id, prr.id_mesto, ll.adresa, ll.broj |
| | 50 | order by count(distinct nn.naracka_id) desc |
| | 51 | limit 1 |
| | 52 | |
| | 53 | ); |
| | 54 | |
| | 55 | }}} |
| | 56 | |
| | 57 | == Да се најде доставувачот кој што има доставено најмногу нарачки, број на нарачки кои ги има доставено, вкупен износ од нарачките, просечен износ од нарачките како и името на администраторот кој го додал == |
| | 58 | |
| | 59 | {{{#!sql |
| | 60 | create view najdobar_dostavuvac as select k.ime, ( |
| | 61 | select count(distinct naplata_id) from naplata nn |
| | 62 | where nn.dostavuvac_id = k.korisnik_id |
| | 63 | ) as broj_naplati, |
| | 64 | ( |
| | 65 | select sum(iznos) from naplata nn |
| | 66 | where nn.dostavuvac_id = k.korisnik_id |
| | 67 | ) as vkupna_suma, |
| | 68 | ( |
| | 69 | select avg(iznos) from naplata nn |
| | 70 | where nn.dostavuvac_id = k.korisnik_id |
| | 71 | ) as prosecna_suma, |
| | 72 | ( |
| | 73 | select kk.ime |
| | 74 | from korisnik kk join admin_table at2 on kk.korisnik_id = at2.korisnik_id |
| | 75 | join dostavuvac d2 on d2.admin_id = at2.korisnik_id |
| | 76 | where d2.korisnik_id = k.korisnik_id |
| | 77 | ) as admin_koj_go_dodal |
| | 78 | from korisnik k join dostavuvac d on k.korisnik_id = d.korisnik_id |
| | 79 | join naracka n on n.dostavuvac_id = d.korisnik_id |
| | 80 | join naplata nap on nap.naplata_id = n.naplata_id |
| | 81 | group by k.korisnik_id |
| | 82 | having count(distinct n.naplata_id) = |
| | 83 | ( |
| | 84 | select count(naplata_id) |
| | 85 | from naplata n |
| | 86 | group by dostavuvac_id |
| | 87 | order by count(naplata_id) desc |
| | 88 | limit 1 |
| | 89 | ); |
| | 90 | |
| | 91 | }}} |