同步首發:http://www.yuanrengu.com/index.php/20171226.htmlphp
在實際的項目開發中有時會有對數據庫某字段截取部分的需求,這種場景有時直接經過數據庫操做來實現比經過代碼實現要更方便快捷些,mysql有不少字符串函數能夠用來處理這些需求,如Mysql字符串截取總結:left()、right()、substring()、substring_index()。html
一.從左開始截取字符串mysql
用法:left(str, length),即:left(被截取字符串, 截取長度)sql
SELECT LEFT('www.yuanrengu.com',8)
結果爲:www.yuan數據庫
二.從右開始截取字符串函數
用法:right(str, length),即:right(被截取字符串, 截取長度)spa
SELECT RIGHT('www.yuanrengu.com',6)
結果爲:gu.comcode
三.截取特定長度的字符串htm
用法:
blog
1.從字符串的第9個字符開始讀取直至結束
SELECT SUBSTRING('www.yuanrengu.com', 9)
結果爲:rengu.com
2.從字符串的第9個字符開始,只取3個字符
SELECT SUBSTRING('www.yuanrengu.com', 9, 3)
結果爲:ren
3.從字符串的倒數第6個字符開始讀取直至結束
SELECT SUBSTRING('www.yuanrengu.com', -6)
結果爲:gu.com
4.從字符串的倒數第6個字符開始讀取,只取2個字符
SELECT SUBSTRING('www.yuanrengu.com', -6, 2)
結果爲:gu
四.按關鍵字進行讀取
用法:substring_index(str, delim, count),即:substring_index(被截取字符串,關鍵字,關鍵字出現的次數)
1.截取第二個「.」之前的全部字符
SELECT SUBSTRING_INDEX('www.yuanrengu.com', '.', 2);
結果爲:www.yuanrengu
2.截取倒數第二個「.」之後的全部字符
SELECT SUBSTRING_INDEX('www.yuanrengu.com', '.', -2);
結果爲:yuanrengu.com
3.若是關鍵字不存在,則返回整個字符串
SELECT SUBSTRING_INDEX('www.yuanrengu.com', 'sprite', 1);
結果爲:www.yuanrengu.com