| | 1 | -- Zarabotka otstvarena preku narackite od aplikacijata za sekoj restoran na mesecno nivo |
| | 2 | SELECT r.ime, DATE_PART('Month', n.datum) AS mesec, DATE_PART('Year', n.datum) AS godina, SUM(iznos) AS zarabotka |
| | 3 | FROM restoran r |
| | 4 | JOIN menu_item m ON r.id=m.restoran_id |
| | 5 | JOIN naracka_sodrzi_menu_item nsm ON m.id=nsm.menu_item_id |
| | 6 | JOIN naracka n ON nsm.naracka_id=n.id |
| | 7 | JOIN naplata np ON n.id=np.naracka_id |
| | 8 | GROUP BY r.ime, DATE_PART('Month', n.datum), DATE_PART('Year', n.datum); |
| | 9 | |
| | 10 | |
| | 11 | -- Kolicina na prodadeni parcinja za sekoj proizvod ponuden vo restoranite, podredeni po popularnost na godisno nivo (najnaracuvaniot proizvod prv) |
| | 12 | SELECT m.ime, DATE_PART('Year', n.datum) AS godina, SUM(nsm.quantity) AS kolicina |
| | 13 | FROM menu_item m |
| | 14 | JOIN naracka_sodrzi_menu_item nsm ON m.id=nsm.menu_item_id |
| | 15 | JOIN naracka n ON nsm.naracka_id=n.id |
| | 16 | GROUP BY m.ime, DATE_PART('Year', n.datum) |
| | 17 | ORDER BY SUM(nsm.quantity) DESC; |
| | 18 | |
| | 19 | |
| | 20 | -- Broj na naracki za sekoj restoran za sekoj mesec |
| | 21 | SELECT r.ime, DATE_PART('Month', n.datum) AS mesec, DATE_PART('Year', n.datum) as godina, count(nsm.naracka_id) AS broj_na_naracki |
| | 22 | FROM restoran r |
| | 23 | JOIN menu_item m ON r.id=m.restoran_id |
| | 24 | JOIN naracka_sodrzi_menu_item nsm ON m.id=nsm.menu_item_id |
| | 25 | JOIN naracka n on nsm.naracka_id=n.id |
| | 26 | GROUP BY r.ime, DATE_PART('Month', n.datum), DATE_PART('Year', n.datum); |
| | 27 | |
| | 28 | -- Pregled na broj na naracki po tip na naplata za sekoj restoran na mesecno nivo |
| | 29 | SELECT r.ime, np.nacin_na_plakjane, DATE_PART('Month', n.datum) AS mesec, DATE_PART('Year', n.datum) as godina, COUNT(DISTINCT n.id) AS broj_na_naracki |
| | 30 | FROM restoran r |
| | 31 | JOIN menu_item m ON r.id=m.restoran_id |
| | 32 | JOIN naracka_sodrzi_menu_item nsm ON m.id=nsm.menu_item_id |
| | 33 | JOIN naracka n on nsm.naracka_id=n.id |
| | 34 | JOIN naplata np ON n.id=np.naracka_id |
| | 35 | GROUP BY r.ime, np.nacin_na_plakjane, DATE_PART('Month', n.datum), DATE_PART('Year', n.datum); |