标签:value 函数 sql str sub table insert ring bsp
--------------建立存储过程
CREATE function [dbo].[split]
(
@str varchar(4500),
@sep varchar(1)
)
returns @t table(id int identity(1,1),col varchar(4500))
as
begin
--分别定义了 目前位置,分隔符开始和字符串长度和,当前获取的字符串
declare @posi int,@start int,@str_leg int,@gchar varchar(2),@mingzhong int
set @str_leg=len(@str)
set @posi=0
set @start=0
set @mingzhong=0
while(@posi<=@str_leg)
begin
set @gchar=substring(@str,@posi,1)
if(@gchar=@sep)
begin
insert into @t values(substring(@str,@start+1,@posi-@start-1))
set @start=@posi
end
set @posi=@posi+1
end
return
end
------------执行,以:为分隔符查询结果
select * from dbo.split(‘234;32423;;2342;a;b;234234;23;‘,‘;‘)
标签:value 函数 sql str sub table insert ring bsp
原文地址:http://www.cnblogs.com/yongfajun/p/6227471.html