0

私がやろうとしているのは、セカンダリ テーブルに存在しない、または存在する個人テーブルのすべてのレコードを返すことですが、2 つの特定のフィールドのいずれかに null 値がある場合に限ります。したがって、次の表が与えられます

person_id   ....
----------------
123         ....
456         ....
789         ....

p_id    colA    colB
--------------------
456     aadl
789     023j    ljlj

私は以下を返します

person_id   ....
----------------
123         ....
456         ....

これは、個人 123 がセカンダリ テーブルに存在しないためです。Person 456 も存在するため返されますが、2 つの列の 1 つが null です。

ありがとう!

4

1 に答える 1

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
        )
;
于 2012-10-11T20:05:52.607 に答える