SQL中如何根据一个字段查询两个表关联字段并修改

SQL中如何根据一个字段查询两个表关联字段并修改
例如 已知有表1 跟表2 要修改的数据关键字段再表1中 现在要修改表2 中的字段
表1根表2有相同的字段
我目前比较笨的办法是先根据关键字段再表1中筛选出相应字段 ,再在表2中根据筛选出的结果进行修改操作 如何能一步实现执行呢?谢谢

 UPDATE 表A A 
       SET A.字段1 = 值1,
           A.字段2 = 值2,
           A.字段3 = 值3
       WHERE EXISTS (SELECT 1
             FROM 表B B
             WHERE A.关联字段 = B.关联字段
             AND A.字段 = 值
             AND B.字段 = 值
       )

温馨提示:答案为网友推荐,仅供参考
第1个回答  2018-04-27
update b  set b.字段A =(select max(a.字段A) from 表1 a where a.id =b.id)
from 表2 b where b.id in (select id from 表1);
--或者
update b set b.字段A=a.字段A from 表1 a ,表2 b where a.id=b.id

本回答被网友采纳
相似回答