日期:2014-05-18 浏览次数:20517 次
查询table表 select 字段,值,表 from table --------------------------------- 怎么把上面的查询出来的结果集变成 update 表 set 字段=值
declare @a table (id int,col varchar(1)) insert into @a select 1,'a' union all select 2,'b' union all select 3,'c' declare @b table (id int,col varchar(1)) insert into @b select 1,'d' union all select 2,'e' union all select 3,'f' --查询 select * from @a /* id col ----------- ---- 1 a 2 b 3 c */ --更新 update @b set col=a.col from @b b left join @a a on b.id=a.id select * from @b /* id col ----------- ---- 1 a 2 b 3 c */
------解决方案--------------------
--如果值是字符型,还要加单引号 declare @sql nvarchar(max) select @sql=isnull(@sql,'')+'update '+表+' set '+字段+'='''+ltrim(值)+'''; ' from table exec(@sql)