mysql函數substring_index的用法

MySQL中一個很好用的截取字符串的函數:substring_index。mysql

用法規則:sql

substring_index(「待截取有用部分的字符串」,「截取數據依據的字符」,截取字符的位置N)數據庫

具體例子:json

首先假定須要截取的字符串爲「15,151,152,16」(雖然這裏指的不是iP,能夠看做是ip結構來處理吧),函數

這裏截取的依據是逗號:「,」.net

具體要截取第N個逗號前部分的字符;索引

意思是:在字符串中以逗號爲索引,獲取不一樣索引位的字符ip

結果以下:字符串

取第一個逗號前的字符串 :get

SELECT SUBSTRING_INDEX('15,151,152,16',',',1); ==>獲得結果爲: 15

N能夠爲負數,表示倒數第N個索引字符後面的字符串。

(有負號的時候,能夠將整個字符倒過來看,依舊是第N個字符前面的部分。)
SELECT SUBSTRING_INDEX('15,151,152,16',',',-1);==>獲得結果爲: 16

取第2個逗號前那部分字符串裏,最後逗號後面的部分

SELECT SUBSTRING_INDEX(SUBSTRING_INDEX('15,151,152,16',',',2),',',-1);==>獲得結果爲: 151

取倒數第二個逗號後面部分字符串,再去這部分裏第一個都號前的部分:

SELECT SUBSTRING_INDEX(SUBSTRING_INDEX('15,151,152,16',',',-2),',',1);==> 獲得結果爲:152

SELECT SUBSTRING_INDEX('15,151,152,16',',',-1);==>獲得結果爲: 16

 

 

 

如果數據庫查詢json的某一個字符的時候,例如:{"id":"101","name":"龍工"}

則能夠

SELECT SUBSTRING(SUBSTRING_INDEX(userId, '",', 1),8,40)id from ed_electrictask  

相關文章
相關標籤/搜索