【发布时间】:2013-01-03 18:45:36
【问题描述】:
令人困惑的查询结果或缺少...
我正在尝试通过从集合中排除可能已经存在于第二个表中的记录来返回记录集。
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中存在3条记录
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
【问题讨论】: