mysql 字符串操作
一:字符串连接
- 以特定字符连接
group_concat(name separator ';')
如 :
SELECT group_concat(id SEPARATOR ',') from data_mr LIMIT 5
- CONCAT函数:字符串拼接,字符串有null就返回null
如:
SELECT CONCAT('MySQL','5.7',null) from data_mr ,
结果 ===> null
- CONCAT_WS :字符串拼接,不拼接null的字符串
如:
SELECT CONCAT_WS('#','MYSQL',5.7) from data_mr LIMIT 5 ,
结果 ===> MYSQL#5.7
SELECT CONCAT_WS('#','MYSQL',5.7,null) from data_mr LIMIT 5 ,
结果 ===>MYSQL#5.7
二:字符串截取
- 从左开始截取字符串
用法:left(str, length),即:left(被截取字符串, 截取长度)
SELECT LEFT('www.yuanrengu.com',8)
结果为:www.yuan
- 从右开始截取字符串
用法:right(str, length),即:right(被截取字符串, 截取长度)
SELECT RIGHT('www.yuanrengu.com',6)
- 字符串间截取:SUBSTRING_INDEX
substring_index(str,delim,count)
str:要处理的字符串
delim:分隔符
count:计数
count是正数,那么就是从左往右数,第N个分隔符的左边的全部内容 相反,如果是负数,那么就是从右边开始数,第N个分隔符右边的所有内容
例子:{"ins":"GX1fb","order":"15342509607038433919","mobile":"18815840263","province":"广西","city":"玉林","isp":"中国移动","time":"20201028153424","fee":100,"extra":"GX1fb"}
截取GX1fb字符串
SUBSTRING_INDEX(SUBSTRING_INDEX(待截取字符串, '","order', 1),'"ins":"' ,- 1)