SQL 中的 substring 函數是用來截取一個欄位資料中的其中一部分。
例如,我們需要將字符串'abdcsef'中的‘abd’給提取出來,則可用substring 來實現:
1 select substring('abdcsef',1,3)
查詢結果:
1 'abd'
括號中數字‘1’表示截取的起始位置是從該字符串第一個字符開始,‘3’表示截取后得到的字符串長度為3個字符。
這是‘substring’最基礎的語法,當然,我們的需求有時候會變得比較復雜,例如以下例子:
我們只想要得到'roomno'中的房間號,發現起始字符位置並不是固定的,而且,我們需要的房間號長度也不固定。
此時,我們可以運用‘charindex’這個函數就可以輕松搞定,它是用來定位某個特定字符在該字符串中的位置,即該函數
得到的結果是一個用來表示某個特定字符位置的數字。執行如下代碼:
1 select room_stand=substring(roomno,charindex('元',roomno)+1,charindex('室',roomno)-charindex('元',roomno)-1) 2 from PROPERTY_room 3 where roomno like '%單元%室%'
結果: