我尝试做的是返回我的人员表中的所有记录,这些记录在辅助表中不存在或者确实存在,但只有在两个特定字段之一中具有空值时才会返回。所以给出以下表格
person_id ....
----------------
123 ....
456 ....
789 ....
p_id colA colB
--------------------
456 aadl
789 023j ljlj
我会回来以下
person_id ....
----------------
123 ....
456 ....
这是因为辅助表中不存在人123。还将返回Person 456,因为它们存在,但两列中的一列为null。
谢谢!
答案 0 :(得分:0)
你可以写:
SELECT *
FROM persons
WHERE person_id NOT IN
( SELECT p_id
FROM secondary_table
WHERE colA IS NOT NULL
AND colB IS NOT NULL
)
;