ITPub博客

返回一个字符串中某一个字符第n次出现的位置的函数

原创 Linux操作系统 作者:hxd001_810 时间:2007-11-29 14:39:20 0 删除 编辑
创建函数如下:
create  function f_firstposition(@Str varchar(8000),@StrSep varchar(10),@AppPos int)
returns int
begin
    declare @i int
    declare @ii int
    set @Str=rtrim(ltrim(@Str))
    set @i=1
    select @ii=charindex(@StrSep,@Str)
    if @i=@AppPos
        return @ii
    else
    while @AppPos>@i
    begin
        if charindex(@StrSep,right(@Str,len(@Str)-@ii))<>0
                select @ii=charindex(@StrSep,right(@Str,len(@Str)-@ii))+@ii
        else
                set @ii=0
        set @i=@i+1
    end

    return @ii
end
go
select dbo.f_firstposition('abc,def,ccc,ged',',',1)
go
返回:4
select dbo.f_firstposition('abc,def,ccc,ged',',',2)
go
返回:8
select dbo.f_firstposition('abc,def,ccc,ged',',',3)
go
返回:12
select dbo.f_firstposition('abc,def,ccc,ged',',',4)
go
返回:0

来自 “ ITPUB博客 ” ,链接:http://blog.itpub.net/9173221/viewspace-10/,如需转载,请注明出处,否则将追究法律责任。

上一篇: 没有了~
下一篇: tempdb数据库
请登录后发表评论 登录
全部评论

注册时间:2007-11-29

  • 博文量
    4
  • 访问量
    12731