MySQL截取字符串函数:left()、right()、substring()、substring_index()。
从左开始截取字符串
用法:left(str, length),即:left(被截取字符串, 截取长度)
SELECT LEFT('www.baidu.com',3);
-- 结果为:www
从右开始截取字符串
用法:right(str, length),即:right(被截取字符串, 截取长度)
SELECT RIGHT('www.baidu.com',3);
-- 结果为:com
截取特定长度的字符串
用法:
-
substring(str, pos),即:substring(被截取字符串, 从第几位开始截取,pos开始位置是1)
-
substring(str, pos, length),即:substring(被截取字符串,从第几位开始截取,截取长度,pos开始位置是1)
-
从字符串的第n个字符开始读取直至结束
SELECT SUBSTRING('www.baidu.com', 1); -- 结果为:www.baidu.com
-
从字符串的第0个字符开始读取,结果为空
SELECT SUBSTRING('www.baidu.com', 0); -- 结果为:空
-
从字符串的第1个字符开始,只取3个字符
SELECT SUBSTRING('www.baidu.com', 1, 3); -- 结果为:www
-
从字符串的倒数第1个字符开始读取,直至结束
SELECT SUBSTRING('www.baidu.com', -1) ; -- 结果为:m
-
从字符串的倒数第n个字符开始读取,只取3个字符
SELECT SUBSTRING('www.baidu.com', -1, 3); -- 结果为:m SELECT SUBSTRING('www.baidu.com', -3, 3); -- 结果为:com
按关键字进行读取
用法:substring_index(str, delim, count),即:substring_index(被截取字符串,关键字,关键字出现的次数)
-
截取第二个“.”之前的所有字符
SELECT SUBSTRING_INDEX('www.baidu.com', '.', 2); -- 结果为:www.baidu
-
截取倒数第二个“.”之后的所有字符
SELECT SUBSTRING_INDEX('www.baidu.com', '.', -1); -- 结果为:com
-
如果关键字不存在,则返回整个字符串
SELECT SUBSTRING_INDEX('www.baidu.com', 'aaa', 1); -- 结果为:www.baidu.com
参考网址
Mysql字符串截取总结:left()、right()、substring()、substring_index()