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 20 MySQL
MySQL sql_mode的使用详解
May 08 MySQL
MySQL 使用索引扫描进行排序
Jun 20 MySQL
新手入门Mysql--sql执行过程
Jun 20 MySQL
mysql事务隔离级别详情
Oct 24 MySQL
Mysql数据库手动及定时备份步骤
Nov 07 MySQL
MySQL中varchar和char类型的区别
Nov 17 MySQL
MySQL窗口函数的具体使用
Nov 17 MySQL
以MySQL5.7为例了解一下执行计划
Apr 13 MySQL
mysql性能优化以及配置连接参数设置
May 06 MySQL
手把手带你彻底卸载MySQL数据库
Jun 14 MySQL
MySQL外键约束(Foreign Key)案例详解
Jun 28 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
Terran建筑一览
2020/03/14 星际争霸
PHP脚本的10个技巧(7)
2006/10/09 PHP
phpMyAdmin 安装及问题总结
2009/05/28 PHP
详解php实现页面静态化原理
2017/06/21 PHP
js获取RadioButtonList的Value/Text及选中值等信息实现代码
2013/03/05 Javascript
js+css实现增加表单可用性之提示文字
2013/06/03 Javascript
Nodejs异步回调的优雅处理方法
2014/09/25 NodeJs
node.js中的fs.appendFile方法使用说明
2014/12/17 Javascript
JS动态修改iframe内嵌网页地址的方法
2015/04/01 Javascript
纯JS实现轮播图
2017/02/22 Javascript
Bootstrap + AngularJS 实现简单的数据过滤字符查找功能
2017/07/27 Javascript
实现两个文本框同时输入的实例
2017/09/25 Javascript
Bootstrap一款超好用的前端框架
2017/09/25 Javascript
使用ajax的post同步执行(实现方法)
2017/12/21 Javascript
mint-ui 时间插件使用及获取选择值的方法
2018/02/09 Javascript
js中对象与对象创建方法的各种方法
2019/02/27 Javascript
vue源码中的检测方法的实现
2019/09/26 Javascript
解决小程序无法触发SESSION问题
2020/02/03 Javascript
vue打开其他项目页面并传入数据详解
2020/11/25 Vue.js
[16:27]DOTA2 HEROS教学视频教你分分钟做大人-艾欧
2014/06/11 DOTA
[15:35]教你分分钟做大人:天怒法师
2014/10/30 DOTA
[01:09]DOTAPLUS——DOTA2的新时代
2018/04/04 DOTA
Python实现的批量下载RFC文档
2015/03/10 Python
Python3.x对JSON的一些操作示例
2017/09/01 Python
python实现朴素贝叶斯分类器
2018/03/28 Python
python3 爬取图片的实例代码
2018/11/06 Python
python飞机大战pygame游戏之敌机出场实现方法详解
2019/12/17 Python
合作经营协议书范本
2014/04/17 职场文书
求职信怎么写范文
2014/05/26 职场文书
2014大学班主任工作总结
2014/11/08 职场文书
通报表扬范文
2015/01/17 职场文书
邮政营业员岗位职责
2015/04/14 职场文书
戒赌保证书
2015/05/11 职场文书
2016中考冲刺决心书
2015/09/22 职场文书
年终奖金发放管理制度,中小企业适用,拿去救急吧!
2019/07/12 职场文书
《西游记》读后感(3篇)
2019/09/20 职场文书