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
select case when charindex( '1', '123a11')>0 then (case when charindex('1', '123a11', charindex('1', '123a11')+1)>0 then charindex('1','123a11', charindex('1', '123a11', charindex('1', '123a11')+1)+1) end ) end