我有 2 个具有相同表结构的表。表 A 的所有交易在每条记录中都有 3 个唯一键。表 B 只有条件基础记录。
如果表 B 具有比我想要更新的匹配记录并且表 B 没有匹配记录而不是在表 B 中插入,我想比较两个表。
您能否建议最好的方法,例如 ssis 或其他任何方法
我有 2 个具有相同表结构的表。表 A 的所有交易在每条记录中都有 3 个唯一键。表 B 只有条件基础记录。
如果表 B 具有比我想要更新的匹配记录并且表 B 没有匹配记录而不是在表 B 中插入,我想比较两个表。
您能否建议最好的方法,例如 ssis 或其他任何方法
最简单的方法是MERGE
声明:
MERGE INTO Table_B
USING Table_A
ON TableA.ID1 = Table_B.ID1 AND TableA.ID2 = Table_B.ID2 AND TableA.ID3 = Table_B.ID3
WHEN MATCHED THEN UPDATE SET A = Table_A.A, B = Table_A.B -- Etcetera...
WHEN NOT MATCHED THEN INSERT (A, B) VALUES (Table_A.a, Table_A.B) -- Etcetera...
WHEN NOT MATCHED BY SOURCE THEN DELETE -- If Necessary...
;
顺便说一句,不要忘记“;” 在最后。SQL Server 通常不需要它们,但 a 需要MERGE
。