sql批量修改从某一表中得到的数据

实例:修改table_A中符合条件的数据,数据是从table_C中查出来的。

      常用于 假如A表中数据有C表中数据批量插入得到( insert into A(aa,bb) values select aa,bb from C  ) 而C表又突然需要增加一字段,且数据还是要从A表中得到,这时就可以利用此方法,批量修改C表中的某字段让其等于A表中查出来的数据。

 (大家还有其他更好的方法也可以拿来分享一下

       (前提要两个表中的字段结构要相同)

 

select identity(int,1,1) as id, classes,username,fenshu into #tmpTable  from table_C

select * from #tmpTable              --创建的临时表用来存放要修改的数据

declare @total int, @i int
declare @classes varchar(20),
       @username varchar(12),
       @fenshu  varchar(12)
SELECT @total=count(*) from #tmpTable
set @i=0
while @i<@total
begin
 
 set @i=@i+1
 select @classes=classes,@username= username,@fenshu=fenshu from #tmpTable where id=@i
 update table_A set  fenshu=@fenshu  where   classes=@classes and  username=@username
end

 

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值