我正在尝试将表中的数据插入到另一个表中,但我正在寻找一个查询,该查询可以首先查看目标中是否存在源值,如果存在则不应加载。
假设我在源代码中有以下内容
ID|EMAIL|COUNTRY|PHONE
1|s@s.com|US|1212
现在检查上面的电子邮件是否存在于目标表中,如果没有加载它。
等待你的回答。
答案 0 :(得分:2)
您可以使用MERGE
声明
MERGE table2 AS target
USING table1 AS source
ON (target.email = source.email)
WHEN NOT MATCHED BY TARGET
THEN INSERT (
email,
country,
Phone
) VALUES (
source.email,
source.country,
source.phone
);
答案 1 :(得分:1)
简单加入也将完成工作
INSERT INTO <TblDestination>
SELECT src.Email
FROM <TblSource> src
LEFT JOIN <TblDestination> dst ON src.Email = dst.Email
WHERE dst.Email IS NULL