3
如果我用以下方式編寫NOT查詢,它們之間有什麼區別?如何在Where子句中使用NOT?
SELECT iBatchID,COUNT(*) FROM #temp WHERE NOT iBatchID IN (1) GROUP BY iBatchID
SELECT iBatchID,COUNT(*) FROM #temp WHERE iBatchID NOT IN (1) GROUP BY iBatchID
就是在我使用WHERE NOT iBatchID IN (1)
和WHERE iBatchID NOT IN (1)
如果有什麼區別?
檢查執行計劃以查看是否有差異。 –
從我的理解來說,它與「!(5 == 3)」和「5!= 3」沒什麼區別。他們都評估相同的事情。除了後者更好地傳達你的目的。 –
根據您的索引,我認爲編譯器可以選擇不同的路徑,但我只是針對兩個簡單的表運行測試,併爲兩種方法獲得了相同的執行計劃。 –