上面兩個簡單的Sql,我們從表面理解,查詢的最終結果應該是一樣的,但實際結果卻和我們想象的不一樣
第一條sql查詢的結果有一條數據
第二條sql查詢的結果卻為空
原因:
not exists的子查詢,對於子查詢不返回行和子查詢返回行的查詢結果是有區別的
這些細小的差別千萬不要被我們所忽視,一旦項目龐大了,想跟蹤到具體的錯誤所花費的時間也是可觀的。盡量把這些不必要的錯誤扼殺在搖籃裡。
啰嗦了,呵呵。
上面兩個簡單的Sql,我們從表面理解,查詢的最終結果應該是一樣的,但實際結果卻和我們想象的不一樣
第一條sql查詢的結果有一條數據
第二條sql查詢的結果卻為空
原因:
not exists的子查詢,對於子查詢不返回行和子查詢返回行的查詢結果是有區別的
這些細小的差別千萬不要被我們所忽視,一旦項目龐大了,想跟蹤到具體的錯誤所花費的時間也是可觀的。盡量把這些不必要的錯誤扼殺在搖籃裡。
啰嗦了,呵呵。