我确实犯了一个愚蠢的错误,但我无法弄清楚:
在SQL Server 2005中,我尝试选择所有客户,除了那些在凌晨2点之前预订的客户.
当我运行此查询时:
SELECT idCustomer FROM reservations
WHERE idCustomer NOT IN
(SELECT distinct idCustomer FROM reservations
WHERE DATEPART ( hour, insertDate) < 2)
Run Code Online (Sandbox Code Playgroud)
我得到0结果.
但
SELECT idCustomer FROM reservations
Run Code Online (Sandbox Code Playgroud)
返回152.000结果和"NOT IN"部分:
SELECT distinct idCustomer FROM reservations
WHERE DATEPART ( hour, insertDate) < 2
Run Code Online (Sandbox Code Playgroud)
仅返回284行