請告訴我爲什麼這不起作用:查找一個表中沒有的其他行 - SQL Server查詢
SELECT t1.id
FROM table1 t1
where t1.id not in
(select t2.id
from table2 t2
where t2.somedate between '2015-01-01 00:00:00' and '2015-04-30 23:59:59'
)
group by t1.id
子查詢的作品和第一選擇作品,但是當我運行整個事情說到空白。
我想在一張表中找到不在另一張表中的記錄(ID)。
任何幫助將不勝感激。 這是在SQL Server btw上。
感謝
我一直在使用「不」有同樣的問題。這可能是sqlserver中的一個bug,或者是我不瞭解的一些東西。按照建議使用左連接。也許「不存在」作品,不太記得。如果有人有任何意見,爲什麼「不在」不起作用,我很樂意聽到它。 – Tobb
您的子查詢是否返回任何NULL值? –
這是由於在表中NULL ID,你可以使用不存在/左連接(請參閱下面的答案)/轉換Null類似「-1」。 – Anil