【叶子函数分享十六】多个数据项的字符串取指定位置字符

本文介绍了一个用于SQL的自定义函数,该函数可以将带有特定分隔符的字符串拆分成多个独立的部分,并允许用户指定所需的特定部分。通过提供的示例,展示了如何创建此函数以及如何使用它来从字符串'1-2-3-4'中提取第三个元素。

-- Author: happyflsytone

-- Date:2008-11-05 14:59:34

-- 创建函数

create function [dbo].[split_str]

(

@s varchar(8000), --包含多个数据项的字符串

@index int, --要获取的数据项的位置

@split varchar(10) --数据分隔符

)

returns varchar(100)

as

begin

if @s is null return(null)

begin

declare @splitlen int

select @splitlen=len(@split+'A')-2

end

while @index>1 and charindex(@split,@s+@split)>0

begin

select @index=@index-1,@s=stuff(@s,1,charindex(@split,@s+@split)+@splitlen,'')

end

return(isnull(left(@s,charindex(@split,@s+@split)-1),''))

end

--测试示例

select dbo.split_str('1-2-3-4',3,'-')

--运行结果

/*

3

*/

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值