欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

SQL Server中通過reverse取某個最后一次出現(xiàn)的符號后面的內(nèi)容(字符串反轉(zhuǎn))

 更新時間:2012年07月09日 01:35:45   作者:  
昨天在項目中遇到了一個非常簡單的問題,需要把SQL Server數(shù)據(jù)庫中保存的一段路徑地址取出其文件名,但SQL Server又沒有現(xiàn)成的方法,最后在網(wǎng)上找到這樣的一個方法,原理是先將字符串反轉(zhuǎn),取出第一個/的位置,從頭進行截取后再次反轉(zhuǎn)
sql語句
復(fù)制代碼 代碼如下:

reverse(substring(reverse(Path),1,charindex('/',reverse(Path)) - 1))


SQL如何取出一個字符串中最后一個特殊字符右邊的字符,例如:10*20*300,怎樣得到300?

使用reverse配合charindex來實現(xiàn)。

reverse是把字符串倒置,然后通過charindex來獲取倒置之后第一個*的位置,然后使用substring函數(shù)進行字符串截取,截取后再使用reverse倒置回來即可。
以下為例子
declare @str varchar(20)
set @str = '10*20*300'
select reverse(substring(reverse(@str),1,charindex('*',reverse(@str)) - 1))
結(jié)果是300
以上是SQLSERVER的語法。
ORACLE數(shù)據(jù)庫也有REVERSE函數(shù),不過SUBSTRING要改成SUBSTR,CHARINDEX函數(shù)要改成INSTR函數(shù)
SELECT reverse(substr(reverse('10*20*300'),1,INSTR(reverse('10*20*300'),'*') - 1)) FROM DUAL;
結(jié)果是300

相關(guān)文章

最新評論