SQL Server中通過reverse取某個最後一次出現的符號後面的內容(字串反轉)

來源:互聯網
上載者:User

sql語句 複製代碼 代碼如下:reverse(substring(reverse(Path),1,charindex('/',reverse(Path)) - 1))

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

使用reverse配合charindex來實現。

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

相關文章

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.