SQL自定义函数,分隔符

--------------建立函数

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;',';')

转载于:https://www.cnblogs.com/yongfajun/p/6227471.html

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值