码迷,mamicode.com
首页 > 数据库 > 详细

sql server 查找指定字符串的位置

时间:2015-01-04 18:34:29      阅读:459      评论:0      收藏: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  
  
  
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  
*/

  

sql server 查找指定字符串的位置

标签:

原文地址:http://www.cnblogs.com/cangowu/p/4201466.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!