本篇内容介绍了“mysql中截取字符串的函数有哪些”的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情况吧!希望大家仔细阅读,能够学有所成!
从左边开始截取,str:被截取字符串;len:截取长度
示例:
从右边开始截取,str:被截取字符串;len:截取长度
示例:
str:被截取字符串;pos:截取开始位置;len:截取长度(非必填:不填截取到最大长度)
示例1:
示例2:
与SUBSTRING(str, pos, len)函数的使用一样
str:被截取字符串;pos:截取开始位置;len:截取长度(非必填:不填截取到最大长度)
示例1:
示例2:
与SUBSTRING(str, pos, len)函数的使用一样
str:被截取字符串;pos:截取开始位置;len:截取长度(非必填:不填截取到最大长度)
示例1:
示例2:
str
:被截取字符串;delim:截取数据依据的字符;
count
:截取数量(count>0就从左边开始取,count<0就从右边开始取)
示例1:
示例2:
示例3:
最后再说一个函数,截取字符串一般都会用到这个函数: LOCATE(substr,str)
作用: 查找字符串中指定字符的位置
substr
:搜索的字符
str
:字符串
从 str 字符串 中获得 substr 字符 的位置(没找到返回 0)
示例1:
示例2:
示例3:
substring_index(str,delim,count)
str
: 要处理的字符串
delim
: 分隔符
count
: 计数
例如: str = www.51aaa.com
substring_index(str,'.',1)
结果是:www
substring_index(str,'.',2)
结果是:www.51aaa
也就是说,如果count是正数,那么就是从左往右数,第N个分隔符的左边的全部内容
substring_index(str,'.',-1)
结果是:com
substring_index(str,'.',-2)
结果是:51aaa.com
相反,如果是负数,那么就是从右边开始数,第N个分隔符右边的所有内容
那么,如果我要中间的的aaa怎么办?
很简单的,两个方向:从右数第二个分隔符的右边全部,再从左数的第一个分隔符的左边:
先获取
substring_index(remarks,'1',-1) as mm
结果是: aaa.com
然后是
substring_index('aaa.com','.',1) as mm
结果是: aaa.com
合起来就是:
substring_index(substring_index(str,'1',-1),'.',1)
数据表t_record的字段remark的值为字符串 1#56次
这里截取#和次之间的字符串,即获取数字56
下面sql的-1表示从重右侧数第一个#,1表示从左侧数起第一个次
select substring_index(substring_index(remarks,'#',-1),'次',1) from t_record
“mysql中截取字符串的函数有哪些”的内容就介绍到这里了,感谢大家的阅读。如果想了解更多行业相关的知识可以关注亿速云网站,小编将为大家输出更多高质量的实用文章!
免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。