【发布时间】:2019-04-18 17:59:17
【问题描述】:
我有一个表(Table1),它有几列组合使用:Name、TestName、DevName、Dept。当这 4 列中的每一列都有值时,记录被插入到 Table2 中。我需要确认表 1 中每个字段中具有现有值的所有记录都已正确复制到表 2 中。
我已经为它创建了一个查询:
SELECT DISTINCT wr.Name,wr.TestName, wr.DEVName ,wr.Dept
FROM table2 wr
where NOT EXISTS (
SELECT NULL
FROM TABLE1 ym
WHERE ym.Name = wr.Name
AND ym.TestName = wr. TestName
AND ym.DEVName = wr.DEVName
AND ym. Dept = wr. Dept
)
我的计数没有加起来,所以我认为这是不正确的。您能否建议我根据我的需要编写此查询的最佳方式?
【问题讨论】:
-
将 'SELECT NULL' 替换为 'SELECT 1' 工作吗?
-
“Table2 中不在 Table1 中的所有行”不是您的查询正在执行的操作。您的查询正在获取 Table1 中所有不在 Table2 中的行。
-
抱歉,Eric,我写错了问题。我运行正确,所以更正了问题
-
Renat - 我还不够熟悉,所以必须测试一下。我会告诉你的,我现在正在做。谢谢!
-
我得到与 NULL 相同的计数 1
标签: sql-server