为了账号安全,请及时绑定邮箱和手机立即绑定

关于update语句 批量更新

关于update语句 批量更新

一只名叫tom的猫 2018-12-06 17:46:36
一个表里面有多条语句要更新,如果用for循环,循环几次就会更新几次,但是同时就会访问几次数据库. 如果数据量很大就会对数据库造成很大的压力.请问update有没有跟insert那样先和select拼接SQL,然后只提交数据到数据库一次的写法?在线等
查看完整描述

4 回答

?
守候你守候我

TA贡献1802条经验 获得超10个赞

update t

set t.Column_name ='test'

from temp t 

left join a on t.a_id=a.id

left join b on t.b_id = b.id

where t.id in(1,2,3) and ...等等

这样就可以批量更新。

查看完整回答
反对 回复 2019-01-07
?
动漫人物

TA贡献1815条经验 获得超10个赞

首先update语句不像insert语句一样可以一句就可以搞定批量的,你如果要做批量修改数据,假如你是用对象处理的话就像装入一个集合中,最后在修改即可。批量修改,你可以自己组装sql,如:update a set a.a=1 where a.id in(1,2,3,4),这样一条sql也可以修改多条数据的

查看完整回答
反对 回复 2019-01-07
?
HUX布斯

TA贡献1876条经验 获得超6个赞

你用的什么语言?如果用的C#,有批量更新的,SQL执行应该是二进制更新的,肯定不是语句,

查看完整回答
反对 回复 2019-01-07
?
慕仙森

TA贡献1827条经验 获得超8个赞

关联更新啊,

UPDATE A

SET A.field = B.field

from table A

inner join table B

ON A.field = b.field

查看完整回答
反对 回复 2019-01-07
  • 4 回答
  • 0 关注
  • 3763 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信