Tsql 设置具有不同值的多行

Tsql 设置具有不同值的多行,tsql,Tsql,我正试图用这种伪代码编写一个存储过程: 如果核心表中存在导入表中的ID 然后使用表1中的RowID更新核心表 我不知道我是不是脑子有点乱,或者我需要使用其他工具来完成这项工作,(光标,cte?)以下是我目前的情况: IF EXISTS(SELECT DISTINCT Core.ID FROM Core, L1 WHERE Core.ID = RIGHT(L1_.ReferenceNo,5)) UPDATE Core SET Dup

我正试图用这种伪代码编写一个存储过程:

如果核心表中存在导入表中的ID 然后使用表1中的RowID更新核心表

我不知道我是不是脑子有点乱,或者我需要使用其他工具来完成这项工作,(光标,cte?)以下是我目前的情况:

 IF EXISTS(SELECT DISTINCT Core.ID 
          FROM Core, L1 
          WHERE Core.ID = RIGHT(L1_.ReferenceNo,5))

    UPDATE Core

    SET DuplicationRef = L1.RowID
    SELECT L1.RowID
    FROM Core core
    INNER JOIN L1 ON core.ID = RIGHT(L1.ReferenceNo,5)

如果导入表中的ID不在核心表中,是否需要执行任何操作?谢谢,这就是我一直在寻找的!
Merge targettable as a
Using sourcetable as b
On a.id = b.ReferenceNo

When matched then
Update set DuplicationRef = b.id;