我有一个存储过程,它将记录从一个表移动到另一个表.但是我现在想要创建一个过程来检查'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
Run Code Online (Sandbox Code Playgroud)
基本上,我想拉出任何不在'TableB'但是在'TableA'中的数字,是LEFT JOIN的方式吗?到目前为止,我一直没有找到丢失的文件,我已经删除了一些以形成测试用例.
你可以使用 not exists
SELECT *
FROM TableA A
WHERE NOT EXISTS (SELECT *
FROM TableB B
WHERE A.NUM = B.NUM);
Run Code Online (Sandbox Code Playgroud)
或者not in:
SELECT *
FROM TableA A
WHERE A.NUM not in (SELECT B.NUM
FROM TableB B);
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
30966 次 |
| 最近记录: |