誰かが私がこのようなscernerioのsqlを書くのを手伝うことができます:
Table 1
2 columns: ID, Name
Table 2
2 columns: ID, Name
テーブル2にないテーブル1の名前をクエリに表示したいので、テーブル2にあるテーブル1のすべての名前を結果クエリとして除外します。名前ではなくIDをフィルタリングに使用します。
これは私がやろうとしていることで私を助けます。前もって感謝します
Select * from table1
left join table2 on table1.id = table2.id
where table2.id is null
このクエリを使用
select
t1.*
from table1 t1
left outer join table2 t2
on t1.id=t2.id
where t2.id is null
これは、t1のすべてをt2に存在するものに結合することで機能します。 where句は、t2に存在しないすべてのレコードを除外します。
SELECT Table1.ID, Table1.Name, Table2.ID
FROM Table1 LEFT OUTER JOIN Table2 ON Table1.ID = Table2.ID
WHERE Table2.ID IS NULL
それでいいと思う。
SELECT * FROM table1
WHERE table2.id NOT IN (SELECT id FROM table2)