MS SQL 获取字符串最后出现的字符串及位置

文字出处:

http://www.cnblogs.com/zhycyq/articles/2597633.html

 

一.如:'6.7.8.2.3.4.x'得到最后一个'.'后面的字符串:

declare @str1 varchar(50)

set @str1='6.7.8.2.3.4.x'

select REVERSE(SUBSTRING(REVERSE(@str1),1,CHARINDEX('.',REVERSE(@str1))-1)) -------- string:'x'--

------------------------------------------------------------------------------------------------------------------------------------------

二.如:'6.7.8.2.3.4.x'得到最后一个'.'前面的字符串:

declare @str2 varchar(50)

set @str2='6.7.8.2.3.4.x'

SELECT substring(@str2,1,(LEN(@str2)-CHARINDEX('.',REVERSE(@str2)))) -------- string:'6.7.8.2.3.4'--

-------------------------------------------------------------------------------------------------------------------------------------------

三.如:'6.7.8.2.3.4.x'得到最后一个'.'在字符串的位置:

declare @str3 varchar(50)

set @str3='6.7.8.2.3.4.x'

SELECT LEN(@str3)-CHARINDEX('.',REVERSE(@str3))+1 --------Integer:12--

 

posted on 2017-05-04 09:13  朴实无华  阅读(512)  评论(0编辑  收藏  举报