2016-06-27 50 views
0

如果两张表格被关联并且一张表格可能有缺失行,如何找到这些记录?例如我有两个表:table1(主键“id”,table2(带外键“id”) 我想实现的是获取所有记录,其中table1记录没有对应的表2(失踪行)相关表格,如何查找有缺失行的记录

+0

进行左连接并检查table2中的相应部分是否为空 –

回答

1

您可以使用NOT EXISTS此:

SELECT * 
FROM table1 AS t1 
WHERE NOT EXISTS (SELECT 1 
        FROM table2 AS t2 
        WHERE t2.id = t1.id) 
0

EXCEPT/EXCEPT ALL可用于:

select id from table1 
except all 
select id from table2