欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  IT编程

SQLSERVER-使用MERGE语句完成单向表同步

程序员文章站 2022-03-23 20:56:39
SQLSERVER-使用MERGE语句完成单向表同步。在SQL server (2008以上版本)中当需要将一个表(可能另一个库)中数据同步到另一个表中时,可以考虑使用merge语...
SQLSERVER-使用MERGE语句完成单向表同步。在SQL server (2008以上版本)中当需要将一个表(可能另一个库)中数据同步到另一个表中时,可以考虑使用merge语句。
只需要提供:
1.目标表 (target table)
2.数据源表 (source table)
3.连接条件
4.当行匹配时执行的更新语句
5.不匹配时更新语句

MERGE dbo.SomeTable AS target       


USING dbo.AnotherTable AS source    


ON (target.[UserName] = source.[UserName])


WHEN MATCHED THEN                           
    UPDATE SET Name = source.Name,
               Col = source.Col


WHEN NOT MATCHED THEN  
    INSERT (Col1, Col2, ...., ColN)  
    VALUES (source.Val1, source.Val2, ...., source.ValN);