我有三張表 - 一個用於運費,一個用於產品,一個用於特殊產品運費的例外情況。運費如下收取: 每件產品都有運費,但這個價格可以被例外覆蓋。如果產品不存在例外情況,則默認費率用於用戶選擇的運費。 alt text http://mi6.nu/sqljoin.png 我試圖加入這些表,以便如果存在異常,則選擇該價格,否則,默認價格被選中,但我遇到了連接問題。我需要通過產品ID來查詢的,我有(2號線是爲了調試)SQL加入CASE和WHERE
SELECT r.ID AS ShippingRateID, r.Name,
e.*, r.*
FROM shipping r LEFT JOIN shippingexceptions e ON r.ID = e.ShippingRateID
WHERE e.ProductID = 48
,我需要回到:
1 Uk and Northern Ireland 1
2 EU Eire... 10
3 US and Canada 2.16
4 Rest of world 2.44
所以,如果有異常存在,則使用異常的價格,否則使用默認價格。我打算使用CASE語句,但我需要首先返回數據。
什麼是你的問題? – hobodave 2009-07-31 13:52:41