我的业务需求说明:
感觉是一个较为常见的需求。我所属的项目中的某表A 因为业务需要增加了几个字段,同时这几个字段也是B表的字段,A表和B表也存在关联关系,需要将A表中的这几个字段通过关联关系从B表中同步过来。
因为我sql较弱,所以最开始尝试解决时首先想到的是insert into select 或select into 等语法,事实上是我走了歪路,因为我需要的是通过关联关系对已有的两个表进行某些字段的更新操作, 如果是仅此需求,使用update语句更为简单明了:
update Atable set (field1,field2,field3) =
(select g.field1, g.field2, g.field3 from Btable g where g.flag = 1 and g.id=Atable.id);
通过set后限定字段集合 = 通过条件查询出的结果集合 进行更新操作。

本文介绍了一种在SQL中更新两个关联表特定字段的方法。当A表新增字段且与B表相同,通过update语句结合子查询实现字段同步。示例代码展示了如何设置A表字段等于从B表通过条件查询出的结果。
822

被折叠的 条评论
为什么被折叠?



