我的MySql數據庫連接到我的Java應用程序。我的用戶可以選擇膳食,膳食類別,數量,寫下便條和訂餐。我將這些訂單存儲在表usluga_hrana
中。目前我只與餐飲服務工作,但我也有其他服務,如飲料服務,叫醒服務和其他服務。這就是爲什麼我需要一張表來處理來自不同服務的所有訂單,其名爲narudzba
。現在我需要在一個查詢中顯示所有這些屬性的值:broj_sobe
(房間號,表narudzba),id_narudzba
(id訂單,表narudzba),naziv_kategorija
(類別名稱,表kategorija_jela),naziv_hrane
(餐的名稱,表naziv_jela) ,kolicina
(數量,表usluga_hrana),napomena
(注意,表usluga_hrana),datum_vrijeme
(日期和時間,表usluga_hrana)和izvrseno
(完成,表narudzba)。問題是,所有這些atributes在不同的表,當我執行我的查詢,它顯示了我的訂單,餐費等多個值MySQL查詢顯示比預期更多的數據
我的表連接是這樣的:
PK id_usluga
(表usluga
)是FK id_usluga
在表narudzba
PK id_usluga
(表usluga
)是FK id_usluga
在表usluga_hrana PK id_kategorija
(表kategorija_jela
)是FK id_kategorija
在表usluga_hrana
PK id_hrana
(表naziv_jela
)是FK id_hrana
表usluga_hrana PK id_kategorija
(表kategorija_jela
)是FK id_kategorija
表naziv_jela
這裏是我的表的專輯,我有多個值的查詢結果:http://imgur.com/a/6grPN
這裏的專輯我的表的其餘部分:http://imgur.com/a/sFPie
這裏是我的查詢:
SELECT n.broj_soba, n.id_narudzba, kj.naziv_kategorija, nj.naziv_hrane, us.kolicina,
us.napomena, us.datum_vrijeme, n.izvrseno
FROM narudzba n
JOIN usluga u ON n.id_usluga = u.id_usluga
JOIN usluga_hrana us ON u.id_usluga = us.id_usluga
JOIN naziv_jela nj ON us.id_jela = nj.id_jela
JOIN kategorija_jela kj ON nj.id_kategorija = kj.id_kategorija
GROUP BY n.id_narudzba, us.id_usluga_hrana
我覺得我的查詢不好......