1、MySQL截取字符串
MySQL截取字符串函數有很多:substring(),substring_index(),left(), right(), mid(), substr()。其中,substring() 的功能非常強大,平時只用這個就夠了,substring_index()是用指定的字符在字符串中第n次出現的位置,之前或之後的字符串。
substring()
substring(字符串, 位置); substring(字符串, 位置, 長度)
-
從字符串的第 5 個字符位置開始取(包括第5個字符),直到結束。
select substring(‘www.csdn.com’, 5);
csdn.com -
從字符串的第 5個字符位置開始取,只取4個字符。
select substring(‘www.csdn.com’, 4, 4);
csdn -
從字符串的倒數第3 個字符位置開始取(包括倒數第3個字符),直到結束。
select substring(‘www.csdn.com’, -3);
com -
從字符串的倒數第 3 個字符位置開始取,只取 2 個字符。
select substring(‘www.csdn.com’, -3, 2);
co
substring_index()
substring_index(字符串,指定字符,第n次位置),如果指定字符在字符串中搜索不到,則返回整個字符串
- 截取第二個 ‘.’ 之前的所有字符。
select substring_index(‘www.csdn.com’ , ‘.’ , 2);
www.csdn - 截取第2個 ‘.’ (倒數)之後的所有字符。
select substring_index(‘www.csdn.com’ , ‘.’ , -2);
csdn.com
2、MySQL取字符串長度
常用的取長度函數有char_length()、length()、bit_length()
char_length() 返回字符個數,一箇中文或英文字符返回都是1
length() 字符在當前編碼下存儲,所佔的字節數
bit_length() 字符在當前編碼下存儲,所佔的bit,也就是length*8
比較常用的就是char_length()
- SELECT char_length(‘你吃了麼?’);
5 - SELECT char_length(‘eat?’);
4
3、MySQL替換字符串
replace(字符串,要替換的字符,新字符)
- SELECT replace(‘你吃了麼?’,‘吃’,‘喝’);
- 你喝了麼?