2
我無法自己想出這個問題,所以我想知道你們是否可以幫助我。我試圖找到我在谷歌的答案,計算器ANS其他幾個地點,但沒有任何結果..從連接表中選擇分鐘
我做了一個查詢:
SELECT leverancier.leveranciers_id,
medicijn.artikelnr,
medicijn.naam,
medicijn.in_voorraad,
medicijn.min_voorraad,
min(order_medicijn.inkoopprijs) AS price
FROM leverancier
INNER JOIN voorraadorder
ON leverancier.leveranciers_id = voorraadorder.leverancier_id
INNER JOIN order_medicijn
ON order_medicijn.voorraadorder_id = voorraadorder.voorraadorder_id
INNER JOIN medicijn
ON medicijn.artikelnr = order_medicijn.artikel_id
GROUP BY leverancier.leveranciers_id,
medicijn.artikelnr,
medicijn.naam,
medicijn.in_voorraad,
medicijn.min_voorraad
ORDER BY artikelnr
其中給出以下結果:
Leveranciers_ID/artikelnr/naam in_voorraad/min_voorraad/price
2 1 Aspirine 100 50 0.74
1 1 Aspirine 100 50 0.75
2 2 Abacivr 200 180 4.50
4 2 Abacivr 200 180 4.00
4 3 Acetazolamide 100 90 1.20
5 4 Ciclovir 145 120 0.50
3 5 levoceterizine 125 120 2.00
問題出在這裏: 我需要什麼樣的查詢才能得到相同的結果,但只有對於每個artikelnr價格最低的記錄才需要。所以結果會是這樣:
Leveranciers_ID/artikelnr/NAAM in_voorraad/min_voorraad /價格
2 1 Aspirine 100 50 0.74
4 2 Abacivr 200 180 4.00
4 3 Acetazolamide 100 90 1.20
5 4 Ciclovir 145 120 0.50
3 5 levoceterizine 125 120 2.00
如果要回答這個問題需要的其他資料,請提問。
預先感謝
什麼是您正在使用的RDBMS? –
我實際上使用2個RDBMSystems。我使用MySQLWorkbench並編輯一些使用PHPMyAdmin的值 – Erik
從查詢中刪除聚合(min())和group by,並嘗試以下操作:'select * from ... inner join ....'並添加where子句最後:'Where order_medicijn.inkoopprijs =(從order_medicijn t2選擇min(t2.inkoopprijs),其中t2.artikel_id = medicijn.artikelnr)' –