P粉5961619152023-08-25 09:32:07
完全を期すため (そして、それがより適切だと私は本当に信じています)、単純な NOT EXISTS
を使用することをお勧めします。
P粉6920525132023-08-25 00:35:13
リーリー ###または:### リーリー
最初のバージョンはより直観的ですが、一般的には 2 番目のバージョンの方がパフォーマンスが向上すると思います (結合で使用される列にインデックスがあると仮定します)。
LEFT JOIN は最初のテーブルのすべての行に対して 1 行を返すため、2 番目のバージョンは機能します。
ON 条件が成功すると、INNER JOIN
と同様に、行には 2 番目のテーブルの列が含まれます。条件が失敗すると、返される行には 2 番目のテーブルのすべての列に対して NULL
が含まれます。 WHERE l.id IS NULL
テストはこれらの行と一致するため、テーブル間で一致しない行が検索されます。