我有一个包含15,000行的备份表。数据直接从主表中复制。我需要使用备份表中的数据在主表上执行UPDATE语句。两个表的结构相同,并使用称为ID的唯一主键。
如何遍历备份表,找到主表中每一行的匹配记录,然后将主表中的每条记录替换为备份表中的匹配记录?
由于
编辑:
根据Sean Lange的评论提出的解决方案:
UPDATE a
SET a.col1 = b.col1
, a.col2 = b.col2
FROM table1 a
INNER JOIN table2 b
ON a.id = b.id
答案 0 :(得分:0)
您可以使用JOIN更新来完成此操作。假设它们具有匹配的主键ID,它应该快速且无痛。
UPDATE table1
SET a.col1 = b.col2
, a.col2 = b.col2
FROM table1 a
INNER JOIN table2 b
ON a.id = b.id