一般的批量修改,都是同一个 where 条件,然后批量修改一批同条件的数据,但是有时候会遇到一种需要根据不同条件,批量修改的操作
具体可以大概参考如下写法:
(1)where 修改条件使用 in 查询多条,在 set 里面利用 w 的属性值再做每条数据的绑定
(2)这里的开启事务,只是方便测试用而已,可以不写
start transaction; -- 开始事务 update wx_company_info w set w.product_code = ( select b.product_code from wx_product b where b.is_top = 1 and b.product_name = w.product_name ) where w.product_name in ( select q.product_name from ( select c.product_name from wx_company_info c where c.product_name is not null and c.product_name <> '' ) q ) rollback; -- 回滚或者 commit; 提交
标签:product,name,批量,写法,多值,修改,mysql,where,select From: https://www.cnblogs.com/xuehuashanghe/p/16738642.html