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的版本
May 19 MySQL
MySQL官方导出工具mysqlpump的使用
May 21 MySQL
MySQL中InnoDB存储引擎的锁的基本使用教程
May 26 MySQL
MySQL不使用order by实现排名的三种思路总结
Jun 02 MySQL
MySQL单表千万级数据处理的思路分享
Jun 05 MySQL
mysql定时自动备份数据库的方法步骤
Jul 07 MySQL
MySQL 聚合函数排序
Jul 16 MySQL
MySQL 数据类型详情
Nov 11 MySQL
关于k8s环境部署mysql主从的问题
Mar 13 MySQL
mysql中数据库覆盖导入的几种方式总结
Mar 25 MySQL
MySQL sql模式设置引起的问题
May 15 MySQL
MYSQL如何查看操作日志详解
May 30 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
用在PHP里的JS打印函数
2006/10/09 PHP
php 阴历-农历-转换类代码
2012/01/16 PHP
PHP去掉从word直接粘贴过来的没有用格式的函数
2012/10/29 PHP
php多种形式发送邮件(mail qmail邮件系统 phpmailer类)
2014/01/22 PHP
PHP基于CURL进行POST数据上传实例
2014/11/10 PHP
基于CI(CodeIgniter)框架实现购物车功能的方法
2018/04/09 PHP
extjs grid设置某列背景颜色和字体颜色的方法
2010/09/03 Javascript
QUnit jQuery的TDD框架
2010/11/04 Javascript
Jquery实现地铁线路指示灯提示牌效果的方法
2015/03/02 Javascript
异步安全加载javascript文件的方法
2015/07/21 Javascript
Node.js操作Firebird数据库教程
2016/03/04 Javascript
bootstrap timepicker在angular中取值并转化为时间戳
2017/06/13 Javascript
Easy UI动态树点击文字实现展开关闭功能
2017/09/30 Javascript
JavaScript代码执行的先后顺序问题
2017/10/29 Javascript
node基于puppeteer模拟登录抓取页面的实现
2018/05/09 Javascript
axios全局注册,设置token,以及全局设置url请求网段的方法
2018/09/25 Javascript
详解Vue-axios 设置请求头问题
2018/12/06 Javascript
Vue 解决多级动态面包屑导航的问题
2019/11/04 Javascript
Vue实现渲染数据后控制滚动条位置(推荐)
2019/12/09 Javascript
Vue快速实现通用表单验证的方法
2020/02/24 Javascript
Python中的zip函数使用示例
2015/01/29 Python
Python实现程序的单一实例用法分析
2015/06/03 Python
python实现判断数组是否包含指定元素的方法
2015/07/15 Python
Python中max函数用于二维列表的实例
2018/04/03 Python
如何使用Python自动控制windows桌面
2019/07/11 Python
Python制作微信好友背景墙教程(附完整代码)
2019/07/17 Python
python matplotlib imshow热图坐标替换/映射实例
2020/03/14 Python
Django之腾讯云短信的实现
2020/06/12 Python
Python 实现微信自动回复的方法
2020/09/11 Python
公安领导班子四风问题个人整改措施思想汇报
2014/10/09 职场文书
学籍证明模板
2014/11/21 职场文书
财务稽核岗位职责
2015/04/13 职场文书
2015年教务工作总结
2015/05/23 职场文书
小学生班干部竞选稿
2015/11/20 职场文书
Python中glob库实现文件名的匹配
2021/06/18 Python
MySQL8.0升级的踩坑历险记
2021/11/01 MySQL