当没有与目标匹配时 - 更新表 - id字段和插入

时间:2014-07-17 19:37:33

标签: sql sql-server tsql merge sql-server-2008-r2

我怀疑这可以做到,我想请问专家。

我有两个大表,需要合并它们(不包括非标识整数键字段)。所有PK都保存在NextId表中。

所以,我的问题是,如果我在MERGE期间插入了 - 有没有办法获取此表的NextId并为每个插入更新此表?

1 个答案:

答案 0 :(得分:0)

不幸的是,这是不可能的,但您可以事先生成ID。例如:

  1. 生成所有ID并将其存储在表变量中。在MERGE语句中加入该表变量。
  2. 如果ID是连续的,您可以使用ROW_NUMBER() OVER (something) + startingID将其生成为MERGE的一部分。