SQL Server达成类似split功效

代码很粗略,贴出代码自个儿看呢,没得可说。

–示例:把”a,b,c,d,e”截取成”a”,”b”,”c”,”d”,”e”
declare@strvarchar(50)
set@str=’a,b,c,d,e’

whilelen(@str)>0
begin
printsubstring(@str,1,1)
declare@posiint
–首先个逗号出现的地点
set@posi=charindex(‘,’,@str)
if@posi=0
break;
set@str=substring(@str,@posi+1,len(@str)-@posi)
–print @str
–print len(@str)
end

输出结果:

a
b
c
d
e

–示例:把”a,b,c,d,e”截取成”a”,”b”,”c”,”d”,”e”

declare @str varchar(50)

set @str=’a,b,c,d,e’

 

while len(@str)>0

begin

    print substring(@str,1,1)

    declare @posi int

    –率先个逗号出现的地方

    set @posi=
charindex(‘,’,@str)

    if @posi=0

    break;

    set @str=substring(@str,@posi+1,len(@str)-@posi)

    –print @str

    –print len(@str)

end

相关文章