如果源数据库和目标数据库在不同的服务器上,我们可以运行MERGE语句吗?



题目就是问题。如果有人也能指出一个链接,这将是非常有帮助的,如果它是可能的。

还有,我们可以在Merge语句中使用CTE吗?或者我们需要考虑其他方法,比如临时表或表变量?

合并的目标不能是远程表,但源可以是。您可以在merge语句中使用CTE。

你可以这样做:

with S as
(
  select ID,
         Name
  from ServerName.DBName.dbo.TableName
)
merge LocalTable as T
using S
on T.ID = S.ID
when not matched then
  insert (ID, Name) values(S.UnitID, S.Name);

最新更新