在 SQL Server 2008 中,通过使用 MERGE 语句,可以在单个语句中执行多个数据操作语言 (DML) 操作。例如,您可能需要根据在另一个表中找到的差异在一个表中插入、更新或删除行,从而对两个表进行同步。通常,可以通过执行包含各个 INSERT、UPDATE 和 DELETE 语句的存储过程或批处理来实现这一目的。然而,这意味着需要多次计算和处理源表和目标表中的数据;至少对每个语句计算和处理一次。因为MERGE性能上比单个的INSERT,UPDATE,DELETE要快。

示例:

图。。。

注意:如果target表和source表连接结果有重复记录,那么在执行MERGE时会报异常,也就是说MERGE不能处理重复记录

MSDN:

            MERGE (Transact-SQL)

            http://msdn.microsoft.com/zh-cn/library/bb510625.aspx

            优化 MERGE 语句性能

http://msdn.microsoft.com/zh-cn/library/cc879317.aspx

相关文章:

  • 2022-02-13
  • 2022-01-17
  • 2022-01-15
  • 2021-12-03
  • 2021-12-30
  • 2022-12-23
  • 2021-05-27
  • 2021-10-31
猜你喜欢
  • 2022-12-23
  • 2021-11-10
  • 2021-08-23
  • 2022-12-23
  • 2021-11-12
  • 2021-06-14
  • 2021-05-16
相关资源
相似解决方案