sql server MERGE的用法及示例
时间: 2023-10-10 15:06:18 浏览: 230
SQL Server 2012 Transact-SQL DML Reference
SQL Server的MERGE语句用于将源数据合并到目标数据中。它基于多个操作符,例如INSERT、UPDATE或DELETE。以下是一个简单的MERGE语句示例,用于将一个表中的行合并到另一个表中:
MERGE INTO targetTable AS T
USING sourceTable AS S
ON (T.ID = S.ID)
WHEN MATCHED THEN
UPDATE SET T.Column1 = S.Column1, T.Column2 = S.Column2
WHEN NOT MATCHED BY TARGET THEN
INSERT (ID, Column1, Column2) VALUES (S.ID, S.Column1, S.Column2)
WHEN NOT MATCHED BY SOURCE THEN DELETE;
在这个例子中,targetTable和sourceTable是两个不同的表,分别代表目标表和源表。MERGE语句通过ID匹配目标表和源表中的行,并执行UPDATE或INSERT操作,或者删除不匹配的行。当目标表和源表中的ID匹配时,MERGE将目标表中的Column1和Column2列更新为源表中的对应值。当源表中的ID对于目标表没有匹配时,MERGE将在目标表中插入新的行。当目标表中的ID对于源表没有匹配时,MERGE将删除目标表中的行。
阅读全文