SQL之得到一个字符串中某一个字符第n次出现的位置的函数
2013-11-25 13:41
316 查看
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
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)
相关文章推荐
- SQL查找某个字符串第N次出现的位置的函数(转帖)
- sql 语句 写一个函数T-sql函数elimination(a,b)将出现在第一个字符串中的第二个字符串中的所有字符删除,即:select dbo.elimination('abcdefg123
- sql查找某个字符串第N次出现的位置的函数(转帖)
- sql查找某个字符串第N次出现的位置的函数(转帖)
- C++字符串处理的一个例子:1.查找一个字符在字符串中第n次出现的位置。2分割字符串
- sql查找某个字符串第N次出现的位置的函数(转帖)
- (C#)检索出一个字符串中某字符第n次出现的位置(IndexOf)
- 在一个字符串(1<=字符串长度<=10000,全部由字母组成)中找到第一个只出现一次的字符,并返回它的位置
- [置顶] 在字符串中查找一个特定的字符最后一次出现的位置,并返回字符所在位置。
- 【PHP函数】strstr() 函数搜索一个字符串在另一个字符串中的第一次出现的位置
- 练习 2-5 编写函数 any(s1, s2),将字符串s2中的任一字符在字符串s1中第一次出现的位置作为结果返回。如果s1中不包含s2中的字符,则返回-1。
- 26.在一个字符串(1<=字符串长度<=10000,全部由大写字母组成)中找到第一个只出现一次的字符,并返回它的位置
- 获得某字符串(matString)中某个字符(string)第n次出现的位置
- 请实现一个函数用来匹配包括'.'和'*'的正则表达式。模式中的字符'.'表示任意一个字符,而'*'表示它前面的字符可以出现任意次(包含0次)。 在本题中,匹配是指字符串的所有字符匹配整个模式。例如,字
- 26.在一个字符串(1<=字符串长度<=10000,全部由大写字母组成)中找到第一个只出现一次的字符,并返回它的位置
- php中的字符串常用函数(一) strpos() 子字符首次出现的位置
- 练习 2-5 编写函数 any(s1, s2),将字符串s2中的任一字符在字符串s1中第一次出现的位置作为结果返回。如果s1中不包含s2中的字符,则返回-1。
- 练习2-5 编写函数any(s1,s2),将字符串s2中的任一字符在字符串s1中第一次出现的位置作为结果返回。如果s1中不包含s2的字符,则返回-1。
- 【剑指Offer-时间效率平衡】在一个字符串(1<=字符串长度<=10000,全部由字母组成)中找到第一个只出现一次的字符,并返回它的位置
- 1.实现一个函数,可以左旋字符串中的k个字符。 ABCD左旋一个字符得到BCDA ABCD左旋两个字符得到CDAB