欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页

SQL update多表关联更新

程序员文章站 2022-06-01 16:46:16
...

两表关联更新

– 方法1. 子查询方式

UPDATE2
SET2.C  =  (SELECT  B  FROM1  WHERE1.A = 表2.A)
WHERE
  exists ( SELECT 1 FROM1  WHERE1.A = 表2.A)
;


update TA a set(name, remark)=(select b.name, b.remark from TB b where b.id=a.id)   
where exists(select 1 from TB b where b.id=a.id)
   例如:
update T_GROUPS t set(t.eng_name,t.chn_short_name)=(select b.eng_name, b.chn_short_name from A_TEST b where t.chn_name = b.chn_name)   
where exists(select 1 from A_TEST b where t.chn_name = b.chn_name)

– 方法2 merge into

MERGE INTO2 
USING1
ON ( 表2.A = 表1.A )    -- 条件是 A 相同
WHEN MATCHED THEN UPDATE SET2.C = 表1.B   -- 匹配的时候,更新
相关标签: 多表update