Oracle/SQL - 在另一个表中查找存在或为空或不存在或为空的记录
我想要做的是返回所有记录我的人员表不存在于辅助表或存在,但只有在两个特定字段中的一个具有空值的情况下。因此,考虑下面的表格Oracle/SQL - 在另一个表中查找存在或为空或不存在或为空的记录
person_id .... ----------------
123 ....
456 ....
789 ....
p_id colA colB
--------------------
456 aadl
789 023j ljlj
我会得到以下
person_id .... ----------------
123 ....
456 ....
这是因为人123没有在二级表中存在。人456也会因为它们存在而被返回,但其中的一列是空的。
谢谢!
回答:
你可以写:
SELECT * FROM persons
WHERE person_id NOT IN
(SELECT p_id
FROM secondary_table
WHERE colA IS NOT NULL
AND colB IS NOT NULL
)
;
以上是 Oracle/SQL - 在另一个表中查找存在或为空或不存在或为空的记录 的全部内容, 来源链接: utcz.com/qa/261812.html