【发布时间】:2013-07-01 11:48:31
【问题描述】:
创建一个 INSERT 查询以将数据从另一个表 (YPTImport) 插入现有表 (YPImport),问题是 YPTImport 中的一些数据已经存储在 YPImport 表中,因此如果我执行标准导入,我将创建重复项在 YPImport 表中。
我可以使用 3 个字段来比较数据以确保没有重复项,即 CNumber、位置和日期。所以如果 CNumber、Location 和 Date 匹配,那么我不想插入行。
我尝试使用 WHERE NOT EXISTS 并在 YPImport 表上使用 INNER JOIN 进行选择以仅选择重复项,但使用 WHERE NOT EXISTS 它返回 0 行。
SELECT item,
CNumber,
Location,
Date,
FROM YPTImport
WHERE NOT EXISTS (SELECT a.item,
a.CNumber,
a.Location,
a.Date,
FROM YPTImport a
INNER JOIN YPImport b
ON a.CNumber = b.CNumber
AND a.Location = b.Location
AND a.Date = b.Date)
有什么建议吗?
【问题讨论】:
标签: sql sql-server-2008 sql-server-2008-r2