用replace
,
将空格替换成‘’,就是空的,
然后跟原先的字符长度比较,
得出的就是字符串的个数。
嘿嘿~
刚刚想到的。
select
id,
len(nr)
-
len(replace(nr,'
'
,
'')
)
from
temp
如有疑问,请追问。
CREATE function [dbo].[GetCharIndexNum](@findstring varchar(max),@string varchar(max))
returns int
AS
BEGIN
declare @location int , --要找的字符位置
@num int --要找的字符出现的次数
set @num =0
set @location = charindex (@findstring,@string)
while @location >0 ---字符串中存在要找的字符
begin
set @num =@num +1
set @string =substring(@string,@location+1,len(@string))
set @location = charindex (@findstring,@string)
end
return @num
END
--举个例子调用这个标量值函数 select [dbo].[GetCharIndexNum]('5','abc5ab5')
返回值2,5这个字符出现了2次
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)