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 05 MySQL
详解GaussDB for MySQL性能优化
May 18 MySQL
MySQL不使用order by实现排名的三种思路总结
Jun 02 MySQL
MySQL8.0无法启动3534的解决方法
Jun 03 MySQL
MySQL 1130异常,无法远程登录解决方案详解
Aug 23 MySQL
MySQL空间数据存储及函数
Sep 25 MySQL
SQL注入详解及防范方法
Dec 06 MySQL
mysql中如何用命令创建联合唯一索引
Apr 20 MySQL
MySQL 条件查询的常用操作
Apr 28 MySQL
sql查询语句之平均分、最高最低分及排序语句
May 30 MySQL
mysql sql常用语句大全
Jun 21 MySQL
MySQL中dd::columns表结构转table过程及应用详解
Sep 23 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实现学生管理系统
2020/03/21 PHP
php 输入输出流详解及示例代码
2016/08/25 PHP
Laravel框架在本地虚拟机快速安装的方法详解
2018/06/11 PHP
PHP实现负载均衡的加权轮询方法分析
2018/08/22 PHP
JavaScript window.document的属性、方法和事件小结
2012/10/24 Javascript
jquery图片切换实例分析
2015/04/15 Javascript
JavaScript实现动画打开半透明提示层的方法
2015/04/21 Javascript
AngularJS入门教程之Scope(作用域)
2016/07/27 Javascript
AngularJS通过ng-Img-Crop实现头像截取的示例
2017/08/17 Javascript
BootStrap Table实现server分页序号连续显示功能(当前页从上一页的结束序号开始)
2017/09/12 Javascript
JS实现碰撞检测的方法分析
2018/01/19 Javascript
vue移动端下拉刷新和上拉加载的实现代码
2018/09/08 Javascript
微信{"errcode":48001,"errmsg":"api unauthorized, hints: [ req_id: 1QoCla0699ns81 ]"}
2018/10/12 Javascript
详解50行代码,Node爬虫练手项目
2019/04/22 Javascript
vue实现带过渡效果的下拉菜单功能
2020/02/19 Javascript
python实现简单ftp客户端的方法
2015/06/28 Python
python判断一个集合是否包含了另外一个集合中所有项的方法
2015/06/30 Python
在Python中增加和插入元素的示例
2018/11/01 Python
Django 后台获取文件列表 InMemoryUploadedFile的例子
2019/08/07 Python
Python之Matplotlib文字与注释的使用方法
2020/06/18 Python
ITK 实现多张图像转成单个nii.gz或mha文件案例
2020/07/01 Python
python中取绝对值简单方法总结
2020/07/24 Python
Python中生成ndarray实例讲解
2021/02/22 Python
俄罗斯儿童和青少年服装、鞋子及配件的在线商店:Orby
2020/02/20 全球购物
Java中会存在内存泄漏吗,请简单描述
2016/12/22 面试题
给分销商的致歉信
2014/01/14 职场文书
运动会入场式解说词
2014/02/18 职场文书
医院护士见习期自我鉴定
2014/04/10 职场文书
一帮一活动总结
2014/05/08 职场文书
法人委托书范本
2014/09/15 职场文书
2014小学二年级班主任工作总结
2014/12/05 职场文书
行政处罚事先告知书
2015/07/01 职场文书
让人瞬间清醒的句子,句句经典,字字如金
2019/07/08 职场文书
Java实现经典游戏泡泡堂的示例代码
2022/04/04 Java/Android
《王者天下》第4季首话新剧照 4月9日正式开播
2022/04/07 日漫
mysql序号rownum行号实现方式
2022/12/24 MySQL