0
我有一個查詢:不使用時,右側爲空當 - 左加入的問題
Select a.Col1,b.Col2
From a
Left Join B b ON a.C = b.C
Where b.D ='someValue'
但是,當右側是空的,我沒有得到記錄,所以左連接不起作用。
你知道如何改變這個查詢來糾正查詢嗎?
我有一個查詢:不使用時,右側爲空當 - 左加入的問題
Select a.Col1,b.Col2
From a
Left Join B b ON a.C = b.C
Where b.D ='someValue'
但是,當右側是空的,我沒有得到記錄,所以左連接不起作用。
你知道如何改變這個查詢來糾正查詢嗎?
移動的附加連接條件到上子句:
Select a.Col1,b.Col2
From a
Left Join B b ON a.C = b.C and b.D = 'someValue'
由於where子句,右側爲空時,查詢將不返回任何內容。如果沒有引用表b,則不會滿足where子句。
我不太清楚如何更正您的查詢。在我看來,這個查詢暗示兩個表之間的鏈接是必需的,因此你的結果在語義上是正確的。
是的,或使用條件'WHERE b.D = 'someValue中' OR b.D IS NULL' – Unreason 2010-10-11 14:47:11