--------------建立存储过程
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<[email protected]_leg)
begin
set @gchar=substring(@str,@posi,1)
if(@[email protected])
begin
insert into @t values(substring(@str,@start+1,@[email protected]))
set @[email protected]
end
set @[email protected]+1
end
return
end
------------执行,以:为分隔符查询结果
select * from dbo.split(‘234;32423;;2342;a;b;234234;23;‘,‘;‘)
时间: 2024-07-30 13:33:35