莫名其妙的查询结果或缺乏...
我试图通过从可能已经存在于第二个表中的集合中排除记录来返回一个记录集。
SELECT trID
FROM ttTrct
WHERE (trID NOT IN
(SELECT rteVehID
FROM rtHist
WHERE (rteSchedDT = '11/19/2012 12:00:00 AM')))
ORDER BY tractorID
实际的 where 子句是...
WHERE (rteSchedDT = CAST(@targetDate AS DATETIME))
但也一直在尝试使用静态日期值来避免出现任何问题。
rtHist 中存在三个记录
rteVehID rteSchedDT
NULL 11/12/2012 12:00:00 AM
NULL 11/19/2012 12:00:00 AM
1645 11/19/2012 12:00:00 AM
ttTrct 中存在 5 条记录
trID
1234
4567
9874
1645
2442
我希望我的结果集包含 4 条记录而不是 1645 条记录。但我只得到 NULL。此外,如果 rtHist 表中的第三条记录也是 NULL 而不是 1645,我也没有得到任何结果。当然,静态日期最终将是一个变量。
关于我所缺少的任何想法?提前致谢。SSEE 2008 R2