SQL Server 2008 R2 - 查找 select 语句之间的差异

SQL Server 2008 R2 - find differences between select statements

如何找到基于相同 table 的两个 select 语句之间的差异?例如:

SELECT ID
FROM Table as TableA
WHERE Date = '2016-04-30'

根据上面的select语句,我想找出所有不存在的ID:

SELECT ID
FROM Table as TableB
WHERE Date = '2016-03-31'
SELECT ID 
FROM Table
group by ID
having sum(case when Date = '2016-04-30' then 1 else 0 end) > 0
   and sum(case when Date = '2016-03-31' then 1 else 0 end) = 0

前面的回答很聪明。这是一种简单的方法。

Select ID from Table
where Date = '2016-04-30' 
and ID not in (select ID from Table where Date = '2016-03-31')