我有两个名为listings
和listings_queue
的表。它们的结构相同。我们的想法是将记录放入队列,对其进行处理,然后将它们移至listings
。
我想运行一个查询来提取listings
但不存在listings_queue
中的任何记录。不存在的标准是它没有与listings_queue
中匹配的字段mls_listing_id和mls_id。
用简单的英语,“给我listings
中没有listings_queue
记录的任何记录与mls_id和mls_listing_id相同的记录。
我已经尝试过做where子句但无法让它工作。
答案 0 :(得分:1)
以下是一种使用where
子句执行此操作的方法:
select l.*
from listings l
where not exists (select 1
from listings_queue lq
where lq.mis_id = l.mis_id and lq.mis_listing_id = l.mis_listing_id
);
您也可以将此作为左外连接:
select l.*
from listings l left outer join
listings_queue lq
on lq.mis_id = l.mis_id and lq.mis_listing_id = l.mis_listing_id
where lq.mis_id is null;
如果listings_queue
表有多个匹配项,则可能会产生重复。