我有两个表,看起来像这样:
T1: ID | Date | Hour | Interval
T2: ID | Date | Hour
我需要在它们的ID、日期和小时匹配时,将这些表连接起来。然而,我只想返回表1中那些与表2不匹配的结果。
我知道这看起来很简单,但我的问题是这样一个事实:表1中有多行与表2匹配(任何给定小时都有多个时间段)。只要它们不在表2的同一小时周期内,我就需要返回所有这些时间段。
示例数据:
T1: 1 | 1/1/2011 | 1 | 1
1 | 1/1/2011 | 1 | 2
1 | 1/1/2011 | 2 | 1
1 | 1/1/2011 | 2 | 2
T2: 1 | 1/1/2011 | 1
我预期的结果集应该是来自T1
的最后两行。有人可以指点我正确的方向吗?
SELECT
语句,加一分。 - BreakthroughWHERE NOT EXISTS
子句。聪明极了,我从来不知道你可以这样做,它运行得非常好。 - Breakthrough