mysql查找字符第n次出现位置_查找字符在字符串中第N次出现的位置

1.查找字符串 @find 在字符串 @str 中第 (@n) 次出现的位置。没有第 (@n) 次返回 0。

返回@find在@str中第(@n)次出现的位置。没有第(@n)次返回0。

create function fn_find(@find varchar(8000), @str varchar(8000), @n smallint)

returns int

as

begin

if @n < 1 return (0)

declare @start smallint, @count smallint, @index smallint, @len smallint

set @index = charindex(@find, @str)

if @index = 0 return (0)

else select @count = 1, @len = len(@find)

while @index > 0 and @count < @n

begin

set @start = @index + @len

select @index = charindex(@find, @str, @start), @count = @count + 1

end

if @count < @n set @index = 0

return (@index)

end

go

你可能感兴趣的:(mysql查找字符第n次出现位置_查找字符在字符串中第N次出现的位置)