SQL 字段取字符位置与循环修改数据

declare @ReWorkTable table(RowNumber int, TaskID int)
insert into @ReWorkTable
select row_number() over (order by gzrw_id), gzrw_id from tworktask where gzrw_tasktype = 7 and gzrw_state = 0 and gzrw_project_id = 38
declare @pos int
declare @count int
select @count = count(RowNumber) from @ReWorkTable
 --print @count
set @pos = 1
while (@pos <= @count)
begin
  declare @id int
  select @id = TaskID from @ReWorkTable where RowNumber = @pos
  --print @id
  declare @gzrw_name varchar(100)
  select @gzrw_name = gzrw_name from tworktask where gzrw_id = @id
  --print @gzrw_name
  declare @tag int
  select @tag= charindex('入',@gzrw_name)
  --print @tag
  declare @gzrw_name_temp varchar(100)
 select @gzrw_name_temp=substring(@gzrw_name,1,@tag)
  --print @gzrw_name_temp
 declare @gzrw_worker_id int
 select @gzrw_worker_id=gzrw_worker_id From tworktask where gzrw_name =@gzrw_name_temp
  --print @gzrw_worker_id
 update tworktask set gzrw_worker_id=@gzrw_worker_id where gzrw_id=@id

 set @pos = @pos + 1
end

IF @@ERROR <> 0
print '成功修改条数:'+@count

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值