您的位置:首页 > 数据库

sql查找字符第N次出现的位置

2017-10-24 10:15 2301 查看

第一个参数是字符串,第二个参数是你要查找的字符 第三个参数是出现的位置

使用:select dbo.IndexOf('1,2,3,4',',',1)
--功能:查找字符第N次出现的位置

CREATE FUNCTION IndexOf(@str VARCHAR(500),@value VARCHAR(50),@posIndex INT)

RETURNS int AS

BEGIN

DECLARE @pos int=0	--记录位置

DECLARE @i INT =0	--记录查找的次数

WHILE(@i<@posindex)

BEGIN

SET @i=@i+1

set @pos=CHARINDEX(@value,@str,@pos+1)

IF(@pos=0) RETURN 0--如果没有找到就返回0,比如abcabc其中a中出现在2次@posIndex=3的话就返回0

END

RETURN	@pos

END
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: