我有一個後續的問題我原來的職位(MySQL Compare prices)MySQL的價格與股票比較
可以說我有一個包含以下幾列表1;
例A)
|item |partnumber |supplier |stock |cost
CD 11A West 11 10.11
CD 11A East 0 10.00
USB BBB North 1 125.01
USB BBB West 1 101.10
現在我已經實現了什麼(由@Ali的幫助)是表1顯示了以下(這基本上顯示了最便宜的價格供貨商的產品):
實施例B)
|item |partnumber |supplier |stock |cost
CD 11A East 0 10.00
USB BBB West 1 101.10
This is the code for EXAMPLE B that is working:
SELECT a.name , a.partnumber , a.supplier , a.cost FROM table1 a JOIN (
SELECT name , partnumber , MIN(cost) cost
FROM table1
GROUP BY name , partnumber)
b ON a.name = b.name AND a.cost = b.cost AND a.partnumber = b.partnumber
但是:IF與最便宜的價格供應商的庫存是0,但另一個供應商有超過0庫存沉綿價格不是最便宜的,我怎麼能做到這一點?下面的例子中西方將採取東的地方如下:
的C)
|item |partnumber |supplier |stock |cost
CD 11A West 11 10.11
USB BBB West 1 101.10
更清晰;總是向供應商展示庫存中最便宜的產品,除非最便宜的供應商沒有庫存中的產品,但是另一個供應商在這種情況下顯示該產品。那麼,我怎樣才能達到例子C)?
非常感謝!
顯示你做了什麼/試過至今。 –
@reds我已將代碼添加到 – Johnny
您的'C'是預期結果嗎? –