@[TOC]oracle 两表关联 update的两个方法
oracle 两表关联 update的两个方法
条件:有表1和表2,表1有字段A,字段B,A为主键,表2也有字段A(不是主键),还有字段C,我希望把表1的字段B赋给表2的C字段。
两种方法:
– 方法1.
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)
– 方法2
MERGE INTO 表2
USING 表1
ON ( 表2.A = 表1.A ) – 条件是 A 相同
WHEN MATCHED THEN UPDATE SET 表2.C = 表1.B – 匹配的时候,更新