mysql字符串截取函数小结


Posted in MySQL onApril 05, 2021

1.前言

在开发过程中,我们有时候需要对字符串有着特殊处理,比如表示区间的一个字段值为2-10,我们需要取最大值(10)或者最小值(2);在比如说,有场景只想要前五个字符,或者后五个字符。这种情况下,我们首相要想到的是字符串截取函数。
mysql字符串截取函数有SUBSTR(),SUBSTRING(),substring_index();INSTR()

2.SUBSTR()

mysql字符串截取函数小结
在上图中我们可以看到substr有四个方法其中1和4作用相同,获取字符串从指定位置长度的字符串,2和3作用相同表示从指定位置到结束。字符串串的起始值都是从1开始的。
其实位置pos的值可以正数,也可以是负数,其中正数表示从字符串从前往后截取,负数表示从后往前截取字符串,

select SUBSTR("mysql sub" ,1) 
union all 
select SUBSTR("mysql sub" from -3) 
union all
select SUBSTR("mysql sub" from -2 for 3) 
union all
select SUBSTR("mysql sub", -1,3)

mysql字符串截取函数小结

3.SUBSTRING()

mysql字符串截取函数小结
该函数的几个方法与SUBSTR相同就不赘述了。
mysql字符串截取函数小结

4.SUBSTRING_INDEXmysql字符串截取函数小结

该函数语法就是一个,含义是指定字符str按照分隔符delim,获取第count个分隔符的左边的全部内容。
mysql字符串截取函数小结

5.INSTR()

INSTR(str,substr) 函数式找到指定字符串str包含substr的位置,如果找到就返回substr第一次出现的第一个位置,
结合SUBSTRING就可以做到第一次出现的位置,获取两个子串。

select INSTR("2020-11-22","-")
union all
select INSTR("2020-11-22","11")

mysql字符串截取函数小结
还可用来进行模糊查询,只要结果大于0表示是有查找到的。即instr(name,str) 等效于name like %str%
两者效率比较

我们函数和全模糊都走不了索引,在百万级别instr要略高于like

MySQL 相关文章推荐
MySQL表的增删改查基础教程
Apr 07 MySQL
MySQL中你可能忽略的COLLATION实例详解
May 12 MySQL
MySQL注入基础练习
May 30 MySQL
MySQL 那些常见的错误设计规范,你都知道吗
Jul 16 MySQL
Mysql8.0递归查询的简单用法示例
Aug 04 MySQL
MySQL的全局锁和表级锁的具体使用
Aug 23 MySQL
mysql中int(3)和int(10)的数值范围是否相同
Oct 16 MySQL
一文弄懂MySQL索引创建原则
Feb 28 MySQL
Nebula Graph解决风控业务实践
Mar 31 MySQL
MySQL中IO问题的深入分析与优化
Apr 02 MySQL
Mysql调整优化之四种分区方式以及组合分区
Apr 13 MySQL
MySQL详解进行JDBC编程与增删改查方法
Jun 16 MySQL
MySQL索引篇之千万级数据实战测试
MySQL表的增删改查(基础)
Apr 05 #MySQL
MySQL入门命令之函数-单行函数-流程控制函数
Apr 05 #MySQL
浅析InnoDB索引结构
Apr 05 #MySQL
mysql知识点整理
Apr 05 #MySQL
MySQL令人咋舌的隐式转换
Apr 05 #MySQL
MySQL锁机制
You might like
ThinkPHP连接数据库的方式汇总
2014/12/05 PHP
PHP使用pcntl_fork实现多进程下载图片的方法
2014/12/16 PHP
CentOS6.5 编译安装lnmp环境
2014/12/21 PHP
js触发asp.net的Button的Onclick事件应用
2013/02/02 Javascript
原生javaScript做得动态表格(注释写的很清楚)
2013/12/29 Javascript
Extjs grid panel自带滚动条失效的解决方法
2014/09/11 Javascript
JavaScript中利用Array和Object实现Map的方法
2015/07/27 Javascript
使用AmplifyJS组件配合JavaScript进行编程的指南
2015/07/28 Javascript
纯javascript实现图片延时加载方法
2015/08/21 Javascript
Bootstrap中文本框的宽度变窄并且加入一副验证码图片的实现方法
2016/06/23 Javascript
jQuery实现点击查看大图并以弹框的形式居中
2016/08/08 Javascript
省市区三级联动jquery实现代码
2020/04/15 Javascript
jQuery实现导航高亮的方法【附demo源码下载】
2016/11/09 Javascript
微信小程序 数组(增,删,改,查)等操作实例详解
2017/01/05 Javascript
JavaScript中的toString()和toLocaleString()方法的区别
2017/02/15 Javascript
angular ng-click防止重复提交实例
2017/06/16 Javascript
Node中使用ES6语法的基础教程
2018/01/05 Javascript
微信小程序实现发红包功能
2018/07/11 Javascript
解决vue2.0路由跳转未匹配相应用路由避免出现空白页面的问题
2018/08/24 Javascript
如何给element添加一个抽屉组件的方法步骤
2019/07/14 Javascript
Python语言描述随机梯度下降法
2018/01/04 Python
centos6.5安装python3.7.1之后无法使用pip的解决方案
2019/02/14 Python
Python求一批字符串的最长公共前缀算法示例
2019/03/02 Python
Python3内置模块之base64编解码方法详解
2019/07/13 Python
解决Django加载静态资源失败的问题
2019/07/28 Python
Python操作MySQL数据库的示例代码
2020/07/13 Python
协程Python 中实现多任务耗资源最小的方式
2020/10/19 Python
使用CSS3的appearance属性改变任何元素的浏览器默认风格
2012/12/24 HTML / CSS
基本款天堂:Everlane
2017/05/13 全球购物
android面试问题与答案
2016/12/27 面试题
大学生职业生涯规划书范文
2014/01/04 职场文书
应届中专生自荐书范文
2014/02/13 职场文书
《骆驼和羊》教学反思
2014/02/27 职场文书
城南旧事电影观后感
2015/06/16 职场文书
情况说明书格式及范文
2019/06/24 职场文书
使用springboot暴露oracle数据接口的问题
2021/05/07 Oracle