WHEN MATCHED
可以有AND
。另外,无需更新EMP_ID
。
...
WHEN MATCHED AND (trg.First_Name <> src.First_Name
OR trg.Last_Name <> src.Last_Name) THEN UPDATE
SET
[VERSION] = tgt.VERSION + 1
,First_Name = src.First_Name
,Last_Name = src.Last_Name
...
如果Last_Name或First_Name可为空,NULL
则例如在比较trg.Last_Name <> src.Last_Name时,需要注意值。ISNULL(trg.Last_Name,'') <> ISNULL(src.Last_Name,'')