SQL服務器上的工作,我是想指望根據某些條件的總行數,如圖波紋管的簡單查詢:SQL服務器上,運營商表現出不同的結果
SELECT count(*) FROM my_table WHERE (supp=92 OR (supp=94 and organisation <> 'LDF'))
知道MY_TABLE不包含任何行與supp=92
和organisation='LDF'
我決定把查詢簡單的像下面這樣:
SELECT count(*) FROM my_table WHERE supp IN (92,94) and organisation <> 'LDF'
兩個查詢的結果是完全不同的。
然而,查詢看起來完全一樣,我一直在試圖找出問題出在哪裏,但我找不到答案。
這真的讓我感到困惑,先謝謝你的回答。
考慮一個行,其中supp = 92 AND organization ='LDF'。它包含在第一個查詢中,但從第二個查詢中排除。 –
也考慮一個行,其中supp = 92 AND organization IS NULL。它將包含在第一個查詢中,但從第二個查詢中排除。 – AHiggins
謝謝你的回答,但是在supp_92和organization ='LDF'的行不存在於my_table上,這就是爲什麼這真是令人困惑 – PaxBin