select dbo.char_indexStr('12332,27676,3767,487,587',',',1)
select dbo.char_indexStr('12332,27676,3767,487,587',',',2)
select dbo.char_indexStr('12332,27676,3767,487,587',',',3)
select dbo.char_indexStr('12332,27676,3767,487,587',',',4)
select dbo.char_indexStr('12332,27676,3767,487,587',',',5)
再贴上一段函数代码:
CREATE function char_indexStr(@string varchar(8000),@char varchar(10),@index int)
--@string:待查找字符串,@index:查找位置
returns nvarchar(max)
as
begin
declare @indexC int
declare @indexD int
select @indexC=dbo.char_index(@string,@char,@index-1)
select @indexD=dbo.char_index(@string,@char,@index)
if(@indexD<>0 and @index>0)
begin
if(@index>1)
begin
return SUBSTRING(@string,@indexC+1,@indexD-@indexC-1);
end
else
begin
return SUBSTRING(@string,0,@indexD);
end
end
else
begin
if(@index>1)
begin
return SUBSTRING(@string,@indexC+1,len(@string)-@indexC);
end
end
return '';--表示未找到
end