sql函数之字符串的分离

Substring 和 charindex@sql 函数

sql server函数

写一函数,功能为字符处理,有三个参数,一个是要处理的字符串,另一个是分隔字符,第三个是获取第几段字符

函数代码如下:
CREATE FUNCTION SeparateTagTest(@tag
nvarchar(4000), @separator VARCHAR(5),@number int)
RETURNS nvarchar(50)
with encryption
AS
BEGIN
DECLARE @pos int, @tmp nvarchar(100), @i int,
@tagName nvarchar(50)
SELECT @pos = 0, @i = 0
WHILE(1=1)
BEGIN
SELECT @tag = LTRIM( SUBSTRING( @tag, @pos + 1, 4000 ) )
SELECT @pos=charindex( @separator, @tag )
IF( @pos = 0 )
SELECT @tmp = substring( @tag, 1,
100 )
else
SELECT @tmp = substring( @tag, 1,
@pos-1 )
SELECT @tagName = ltrim(
rtrim(SUBSTRING( @tmp, 1, 50 ) ) )
IF(@i = (@number -1))
RETURN @tagName
IF( @pos = 0 )
BREAK
SELECT @i = @i + 1
END
RETURN @tagName
END
go

测试结果

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值