使用while循环更新查询 [英] update query with in while loop

查看:210
本文介绍了使用while循环更新查询的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

advisor_id  advisor_name introducer_name intro_advisor_id
1            A              A
2            B              A
3            C              B
4            D              C
5            E              C
6            F              E





两个名字相同

他们互相介绍



如何更新列intro_advisor_id





both name as same
they are introduce to each other

how to update the column intro_advisor_id

advisor_id  advisor_name introducer_name  intro_advisor_id
1            A              A                1
2            B              A                1
3            C              B                2
4            D              C                3
5            E              C                3
6            F              E                5



像这样我有一个批量记录和我使用此查询






Like this i have a bulk records and i used this query


declare @advisor_id as int
declare @advisor_name as nvarchar(max)
declare @advisor_code as nvarchar(max)
set @advisor_id=1
select @advisor_id=advisor_id,@advisor_name=advisor_name from tbl_advisor_dummy where advisor_id=@advisor_id
while(@advisor_id<501)
begin
update tbl_advisor_dummy  set create_by_user_id=@advisor_id where introducer_name = @advisor_name
set @advisor_id=@advisor_id+1
end



但它不起作用,我我坚持这个



谢谢,


but its not working, I am stuck with this

thanks,

推荐答案

你想加入:

You want a JOIN:
UPDATE A SET A.intro_advisor_id=U.advisor_id
FROM tbl_advisor_dummy A
JOIN tbl_advisor_dummy U
ON U.advisor_name = A.introducer_name


这篇关于使用while循环更新查询的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆