各位帮帮忙嘛!
帮我做一道题!
我用的是以下这种语句,但是我写的里面有欠缺,达不到我要的结果。你们帮我改下嘛!谢谢了!
这串随机字符是逗号分隔的,老师说要用CHARINDEX来实现。
declare @a varchar(128),@b int,@c varchar(1)
set @a='aghkigftu,okhlllllllhp,fukkkkkmjg,cftvbhjn,cv,oijghfdjjl,[piojigtd,zxcvbnm,wqertyuiop,mlkhjggffjgffyui,10253,987456321,7414,'
set @b=1
set @c=''
while (@b<=len(@a))
begin
set @c= substring(@a,@b,1)
if @c!= ','
print @c set @b=@b+1
end我想要的结果:aghkigftu
okhlllllllhp
fukkkkkmjg
cftvbhjn
cv
oijghfdjjl
piojigtd
zxcvbnm
wqertyuiop
mlkhjggffjgffyui
10253
987456321
7414
帮我做一道题!
我用的是以下这种语句,但是我写的里面有欠缺,达不到我要的结果。你们帮我改下嘛!谢谢了!
这串随机字符是逗号分隔的,老师说要用CHARINDEX来实现。
declare @a varchar(128),@b int,@c varchar(1)
set @a='aghkigftu,okhlllllllhp,fukkkkkmjg,cftvbhjn,cv,oijghfdjjl,[piojigtd,zxcvbnm,wqertyuiop,mlkhjggffjgffyui,10253,987456321,7414,'
set @b=1
set @c=''
while (@b<=len(@a))
begin
set @c= substring(@a,@b,1)
if @c!= ','
print @c set @b=@b+1
end我想要的结果:aghkigftu
okhlllllllhp
fukkkkkmjg
cftvbhjn
cv
oijghfdjjl
piojigtd
zxcvbnm
wqertyuiop
mlkhjggffjgffyui
10253
987456321
7414
set @a='aghkigftu,okhlllllllhp,fukkkkkmjg,cftvbhjn,cv,oijghfdjjl,
[piojigtd,zxcvbnm,wqertyuiop,mlkhjggffjgffyui,10253,987456321,7414,'while len(@a)>1
begin
print left(@a,charindex(',',@a)-1)
set @a= right(@a,len(@a)-charindex(',',@a))
end
如果要用CHARINDEX和substring函数应该怎么实现呢?
set @i=0
while (@i<len(@s))
begin
select substring(@s,@i,charindex(',',@s,@i))
select @i=charindex(',',@s,@i)
end没有测试,