如何根据另一个表中不存在的引用字段的值获取表的id ?



表A和表B具有以下字段

A
-----
id
bID
B
-----
id

如果字段bID的值在表B字段id中不存在,我怎么能得到表A的所有id?

这样就有了以下数据

A
-----
id   bID
1    1
2    2
3    3
B
-----
id
1
2
4
5

期望的结果是表A的id 3

我将在这里使用exists逻辑:

SELECT id
FROM A a
WHERE NOT EXISTS (SELECT 1 FROM B b WHERE b.id = a.bID);

如下:

SELECT id FROM A WHERE bid NOT IN (SELECT id FROM B)

尝试使用inner join

select * from A left join B on b.id = a.bID where b.id is null

最新更新