首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 数据库 > SQL Server >

sql 更新多列的有关问题

2013-01-28 
sql 更新多列的问题有一张表需要更新120列数据,opp1-opp120,以前是用游标写的,每次更新一列,但效率比较低。

sql 更新多列的问题
有一张表需要更新120列数据,opp1-opp120,以前是用游标写的,每次更新一列,但效率比较低。但如果改成update acccount set opp1=1,opp2=1,...opp120=1 where ... 要写120个,也太繁琐了。

请教有没有什么好的方法?
[解决办法]
动态拼接语句?
[解决办法]
如果值固定的话,可以把列拼接出来
select stuff((select ','+name+'=1' from sys.columns where object_id=object_id('表名') for xml path('')),1,1,'')
[解决办法]
给点数据看看
[解决办法]

引用:
需要更新两次,第一次是把这120列置为固定值,第二次根据条件把另一张表的数据更新到相应的列上

呵呵,你应该把语句写好存在一个表里,下次直接运行,一劳永逸啊~

热点排行