我有两个表:RDat1和RDat2。我正在尝试查找在2015-01到2015-06的时间范围内R1中的publisher_id与R2中的publisher_id不匹配的发生次数。我基于queue_id中的共享密钥加入了两个表。这是我写的查询,但它总是会返回0 ...
Select count(*)
from RDat1 r1
join RDat2 r2 on r2.queue_id = r1.queue_id
where r1.publisher_id <> r2.publisher_id and r1.lead_time between
'2015-01-01 00:00:00' and '2015-06-30 23:59:59'
;
答案 0 :(得分:0)
使用左外连接而不是内连接。这将返回r1和null I&#39; m2中的所有数据。然后,您至少可以查看所有数据以及是否有任何匹配。然后,如果需要,您可以进一步过滤
答案 1 :(得分:0)
Select count(publisher_id) from RDat1 r1 where r1.publisher_id not in (select publisher_id from RDat2 r2 where r2.queue_id = r1.queue_id) and r1.lead_time between '2015-01-01 00:00:00' and '2015-06-30 23:59:59' ;