请问怎么在SQL函数里传进一个字符串参数然后返回这个字符串用逗号隔开的字符串数量比如a,7,34,4,BB得出应该是5不是从表里取东西这是函数是得到传进来的参数对参数进行操作然后返回一个...
1 回答
BIG阳
TA贡献1859条经验 获得超6个赞
sql中可以自定义函数来统计逗号隔开的字符串的数量:
参考如下:
drop function search_dh
go
CREATE FUNCTION search_dh(@str varchar(max))
returns int--设置返回值是returns
AS
BEGIN
DECLARE @result int --返回逗号个数
declare @j int
set @result = 0
set @j = 1
while @j<len(@str)
begin
if substring(@str,@j,1) = ',' --@j是开始位置,1位置参数是长度值
begin
set @result = @result+1
end
set @j = @j+1 --如果出现无限循环请检查参数是否加1以及位置问题
end
return @result --返回结果
END
用法:
select dbo.search_dh ('a,b,c') --引用自定义函数时需要加上dbo.前缀
SELECT x = SUBSTRING('abcdef',2, 2)
- 1 回答
- 0 关注
- 457 浏览
添加回答
举报
0/150
提交
取消