sql server 查找指定字符串的位置
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 declare @str varchar(100) set @str=‘A,B,C,D,A,B,C,D,C,D,B,A,C,E‘ select dbo.fn_find(‘A‘,@str,1) as one, dbo.fn_find(‘A‘,@str,2) as two, dbo.fn_find(‘A‘,@str,3) as three, dbo.fn_find(‘A‘,@str,4) as four /* one two three four ----------- ----------- ----------- ----------- 1 9 23 0 */
郑重声明:本站内容如果来自互联网及其他传播媒体,其版权均属原媒体及文章作者所有。转载目的在于传递更多信息及用于网络分享,并不代表本站赞同其观点和对其真实性负责,也不构成任何其他建议。