6

あるテーブルから別のテーブルにレコードを移動する (または移動する必要がある) ストアド プロシージャがあります。ただし、「TableA」のデータを「TableB」のデータと照合するプロシージャを作成したいと考えています。

SELECT A.Num, B.Num
FROM TableA AS A 
LEFT JOIN TableB AS B ON A.Num = B.Num
WHERE B.Num IS NULL

基本的に、「TableB」にはなく「TableA」にある数値を引き出したいのですが、LEFT JOIN はこれを行う方法ですか? これまでのところ、不足しているファイルを見つけることができず、いくつかを削除してテスト ケースを作成しました。

4

5 に答える 5

12

あなたが使用することができますnot exists

SELECT  *   
FROM TableA A  
WHERE NOT EXISTS (SELECT *      
                  FROM TableB B
                  WHERE A.NUM = B.NUM);

またはnot in:

SELECT  *   
FROM TableA A  
WHERE A.NUM not in (SELECT B.NUM
                  FROM TableB B);
于 2012-08-09T14:37:39.133 に答える
3
SELECT Num from TableA
EXCEPT
SELECT Num from TableB
于 2012-08-09T14:37:58.510 に答える
2
select * from tableA
where id not in (select id from tableB)

また

select * from tableA a
left join tableB b on a.id = b.id
where b.id is null
于 2012-08-09T14:38:16.103 に答える
1
select * from tableA
where id in (select id from tableB);
于 2016-11-10T10:04:56.020 に答える