您当前的位置: 首页 >  sql

[MSSQL]获取元素个数的函数

发布时间:2012-02-16 12:38:43 ,浏览量:0

 
go

-- 创建函数(作者:csdn邹建)
create function getstrarrlength (@str varchar(8000)) 
returns int 
as 
begin 
declare @int_return int 
declare @start int 
declare @next int 
declare @location int 
select @str =','+ @str +',' 
select @str=replace(@str,',,',',') 
select @start =1 
select @next =1 
select @location = charindex(',',@str,@start) 
while (@location <>0) 
begin 
select @start = @location +1 
select @location = charindex(',',@str,@start) 
select @next =@next +1 
end 
select @int_return = @next-2 
return @int_return 
end 

-- 测试示例
SELECT [dbo].[getstrarrlength]('1,2,3,4,a,b,c,d') 
--运行结果
/*
8
*/
/*
说明:
我开始考虑直接看逗号的个数,用replace替换逗号,求长度差就可以了,但是这里这个函数两个逗号相邻做了处理。
*/
关注
打赏
1688896170
查看更多评论

暂无认证

  • 0浏览

    0关注

    105695博文

    0收益

  • 0浏览

    0点赞

    0打赏

    0留言

私信
关注
热门博文
立即登录/注册

微信扫码登录

0.0482s