我加入了2張桌子。需要SQL連接的幫助:條件匹配?
ACCOUNTS
account_number region product
1234 100 AB
2345 0 AB
3456 300 CD
4567 0 CD
PRODUCTS
product region price
AB 100 $1.50
AB 0 $1.25
CD 0 $2.00
每個帳戶記錄有一個區域和產品代碼 產品由產品代碼和區域獨特。
但是,業務邏輯表示如果PRODUCTS表中沒有匹配區域,則使用0區域來獲取價格。
所以我必須加入產品和地區來獲得區域特定的價格。在該示例中,帳戶1234,2345,&4567找到匹配的記錄。
但我需要找到一種方法來將3456加入到產品CD的0區域。
我想我可以(ACCOUNTS left join PRODUCTS)然後更新任何零價格強制區域爲0,但這有多醜?
任何想法?
另外,我正在使用供應商應用程序,因此我無法更改模式或數據。
數據庫:MS SQLSERVER 2005
哪個數據庫? – 2010-02-11 15:58:09