id Name
1 a
2 b
3 c
4 d
5 e
表B:ここ
id Name
3 c
4 d
5 e
、IDは表B
に接続された主キーである私はこのような出力を必要とします -
id
1
2
つまり、which ids表Aには含まれていません。
id Name
1 a
2 b
3 c
4 d
5 e
表B:ここ
id Name
3 c
4 d
5 e
、IDは表B
に接続された主キーである私はこのような出力を必要とします -
id
1
2
つまり、which ids表Aには含まれていません。
使用EXCEPT
:
select id from tableA
except
select id from tableB
Not in
を使用しています。
Select id from TableA
where id not in (Select id from TableB);
あなたは左側にすべてのレコードを保持し、一致するレコードが右側に利用できない場合null
とそれらを関連付けますleft join
を、使用することができます - :
はこれを試してみてください。 あなたが右サイド列でフィルタリングすることができますこの方法では、望ましい結果を得るためにはnullであることをオペレータ
select t1.id
from tableA t1
left join
tableB t2
on t1.id = t2.id
where t2.id is null
使用しないが、中に存在するWHERE句
SELECT id FROM TableA A
WHERE NOT EXISTS(SELECT 1 FROM TableB B WHERE A.id = B.Id)
minus
を使用できます。
select * from tableA
minus
select * from tableB
「MINUS」は標準ではなく、一部のDBMS(Oracle、Teradataなど)でのみ使用できます。 SQL Serverでは代わりに標準のEXCEPTを使用します。 –