相关表,如果缺少行,如何查找记录

时间:2016-06-27 08:40:00

标签: sql

如果两个表相关并且一个表可能缺少行,那么如何查找这些记录?

例如我有两个表:table1(主键“id”,table2(外键“id”) 我想要实现的是获取所有记录,其中table1记录在table2中没有对应物(缺少行)。

2 个答案:

答案 0 :(得分:1)

您可以使用NOT EXISTS

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

答案 1 :(得分:0)

可以使用

EXCEPT / EXCEPT ALL

select id from table1
except all
select id from table2