Oracle两张表关联批量更新其中一张表的数据
时间:2022-06-13 10:12:53|栏目:Oracle|点击: 次
方法一(推荐):
UPDATE 表2
SET 表2.C =
(SELECT B
FROM 表1
WHERE 表1.A = 表2.A)
WHERE EXISTS
(SELECT 1
FROM 表1
WHERE 表1.A = 表2.A);
尤其注意最后的外层where条件尤为重要,是锁定其批量更新数据的范围。
方法二:
MERGE INTO 表2
USING 表1
ON (表2.A = 表1.A) -- 条件是 A 相同
WHEN MATCHED
THEN
UPDATE SET 表2.C = 表1.B -- 匹配的时候,更新






