[SQL] 如何取得欄位中具固定pattern字串最右邊的值

  • 4478
  • 0

[SQL] 如何取得欄位中具固定pattern字串最右邊的值

今天同事問了一個SQL語法問題,由於之前沒遇到這樣的需求,就順手分享記錄一下 :)

 

  • 需求:

某個欄位中儲存的字串值是有一定的pattern格式,想取出最靠右邊的一段出來

 

  • 範例說明:

假設欄位裡的資料如下圖所示,是以『.』串起來的值,想取出最後一段的

字串出來。

image

 

  • 語法:

利用反轉字串,然後找出第一個『.』出現位置的 index 值,再 index 值決定右取

多少長度的字串即可。

 

反轉字串Function – REVERSE

ChartIndex Function  - CHARINDEX

右取固定長度字串 -  RIGHT

 

select typename 
,RIGHT(typename,(CHARINDEX('.',REVERSE(typename))-1)) as result
from mytable 

image

 

若本文對您有所幫助,歡迎轉貼,但請在加註【轉貼】及來源出處,並在附上本篇的超連結,感恩您的配合囉。

By No.18