SQL批量更新

1.批量更新主表实例分享

--明细表的数据汇总值和主表的ID
select h.id,sum(d.yxgst) yxgs2 from formtable_main_379 h left join formtable_main_379_dt1 d on h.id =d.mainid where (d.yxgst>0) and ( h.yxgs=null or h.yxgs=0) group by h.id
--批量更改主表字段,条件是主表ID相同
update formtable_main_379 set yxgs=b.yxgs2 from formtable_main_379 a inner join(select h.id,sum(d.yxgst) yxgs2 from formtable_main_379 h left join formtable_main_379_dt1 d on h.id =d.mainid where (d.yxgst>0) and ( h.yxgs=null or h.yxgs=0) group by h.id) b
on a.id=b.id

posted @ 2022-08-05 16:19  尤念  阅读(1617)  评论(0)    收藏  举报