Mysql 字符串截取

1、从左开始截取字符串 
left(str, length) 
说明:left(被截取字段,截取长度) 
例:select left(content,200) as abstract from my_content_t 
2、从右开始截取字符串 
right(str, length) 
说明:right(被截取字段,截取长度) 
例:select right(content,200) as abstract from my_content_t 
3、截取字符串 
substring(str, pos) 
substring(str, pos, length) 
说明:substring(被截取字段,从第几位开始截取) 
substring(被截取字段,从第几位开始截取,截取长度) 
例:select substring(content,5) as abstract from my_content_t 
select substring(content,5,200) as abstract from my_content_t 
(注:如果位数是负数 如-5 则是从后倒数位数,到字符串结束或截取的长度) 

1.从字符串的第9个字符开始读取直至结束

SELECT SUBSTRING('www.cnblogs.com', 9)

结果为:rengu.com

2.从字符串的第9个字符开始,只取3个字符

SELECT SUBSTRING('www.cnblogs.com', 9, 3)

结果为:ren
3.从字符串的倒数第6个字符开始读取直至结束

SELECT SUBSTRING('www.cnblogs.com', -6)

结果为:gu.com

4.从字符串的倒数第6个字符开始读取,只取2个字符

SELECT SUBSTRING('www.cnblogs.com', -6, 2)


4、按关键字截取字符串 
substring_index(str,delim,count) 
说明:substring_index(被截取字段,关键字,关键字出现的次数) 

1.截取第二个“.”之的所有字符

SELECT SUBSTRING_INDEX('www.cnblogs.com', '.', 2);

结果为:www.cnblogs

2.截取倒数第二个“.”之的所有字符

SELECT SUBSTRING_INDEX('www.cnblogs.com', '.', -2);

结果为:cnblogs.com

3.如果关键字不存在,则返回整个字符串

SELECT SUBSTRING_INDEX('www.cnblogs.com', 'sprite', 1);

结果为:www.cnblogs.com

原文地址:https://www.cnblogs.com/ywl925/p/3872773.html