SQL Server怎么批量更新提高效率?

C#
将ID=1,ID=2,ID=3······ID=10这十条数据的NAME字段都改成ABC
用foreach操作很耗时间,有没有什么批量的方法提高效率?

3个回答

sql语句优化一下,where id between 或者 in(1,10)

qq_32721653
brbrbrprint 回复greenlab: between 1 and 10 是可以的
接近 5 年之前 回复
qq_32721653
brbrbrprint 回复greenlab: 刚测试了一下,的确是不可以用between。太谢谢你了,让我知识又巩固了
接近 5 年之前 回复
qq_32721653
brbrbrprint 回复greenlab: 我用的是mysql 是可以用in的,再说了,这只是个语法
接近 5 年之前 回复
greenlab
greenlab 数据库ID是uniqueidentifier,不能用Between吧
接近 5 年之前 回复
greenlab
greenlab 数据库ID是uniqueidentifier,不能用Between吧
接近 5 年之前 回复
greenlab
greenlab 数据库ID是uniqueidentifier,不能用Between吧
接近 5 年之前 回复
greenlab
greenlab 数据库ID是uniqueidentifier,不能用Between吧
接近 5 年之前 回复

楼上说的对,使用between可以批量更新,效率远远高于一条条更新。

greenlab
greenlab 数据库ID是uniqueidentifier,不能用Between吧
接近 5 年之前 回复

先把你要update的数据的id值存到一个临时表,然后直接:

update xx
from xx
inner join temp_tb
on tb.id = xx.id
set name = 'abc'

Csdn user default icon
上传中...
上传图片
插入图片
抄袭、复制答案,以达到刷声望分或其他目的的行为,在CSDN问答是严格禁止的,一经发现立刻封号。是时候展现真正的技术了!
立即提问
相关内容推荐