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
多表查询、事务、DCL
Apr 05 MySQL
Mysql基础知识点汇总
May 26 MySQL
MySQL通过binlog恢复数据
May 27 MySQL
SQL注入的实现以及防范示例详解
Jun 02 MySQL
MySQL系列之六 用户与授权
Jul 02 MySQL
MySQL 聚合函数排序
Jul 16 MySQL
Mysql超详细讲解死锁问题的理解
Apr 01 MySQL
排查MySQL生产环境索引没有效果
Apr 11 MySQL
MySql数据库触发器使用教程
Jun 01 MySQL
mysql拆分字符串作为查询条件的示例代码
Jul 07 MySQL
MySQL池化框架学习接池自定义
Jul 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字符串分割函数explode的实例代码
2013/02/07 PHP
destoon调用discuz论坛中带图片帖子的实现方法
2014/08/21 PHP
php下foreach提示Warning:Invalid argument supplied for foreach()的解决方法
2014/11/11 PHP
php的GD库imagettftext函数解决中文乱码问题
2015/01/24 PHP
ThinkPHP3.2.3实现分页的方法详解
2016/06/03 PHP
50个比较实用jQuery代码段
2011/09/18 Javascript
jquery ajax同步异步的执行最终解决方案
2013/04/26 Javascript
用jQuery获取IE9下拉框默认值问题探讨
2013/07/22 Javascript
Checbox的操作含已选、未选及判断代码
2013/11/07 Javascript
js 判断文件类型并控制表单提交示例代码
2013/11/14 Javascript
nodeType属性返回被选节点的节点类型介绍
2013/11/22 Javascript
轻松创建nodejs服务器(10):处理上传图片
2014/12/18 NodeJs
黑帽seo劫持程序,js劫持搜索引擎代码
2015/09/15 Javascript
浅谈js函数三种定义方式 & 四种调用方式 & 调用顺序
2017/02/19 Javascript
详解JavaScript调用栈、尾递归和手动优化
2017/06/03 Javascript
vue2组件之select2调用的示例代码
2017/10/12 Javascript
js动态设置select下拉菜单的默认选中项实例
2018/08/21 Javascript
原生JS与CSS实现软件卸载对话框功能
2019/12/05 Javascript
解决vuex刷新数据消失问题
2020/11/12 Javascript
vue 使用localstorage实现面包屑的操作
2020/11/16 Javascript
[02:18]《我与DAC》之工作人员:为了热爱DOTA2的玩家们
2018/03/28 DOTA
Python编程之多态用法实例详解
2015/05/19 Python
python 打印出所有的对象/模块的属性(实例代码)
2016/09/11 Python
Python自定义主从分布式架构实例分析
2016/09/19 Python
python解析xml简单示例
2019/06/21 Python
Python实现蒙特卡洛算法小实验过程详解
2019/07/12 Python
python中的逆序遍历实例
2019/12/25 Python
Python selenium模拟手动操作实现无人值守刷积分功能
2020/05/13 Python
如何在Python对Excel进行读取
2020/06/04 Python
Python常用外部指令执行代码实例
2020/11/05 Python
python 实现图片批量压缩的示例
2020/12/18 Python
如何掌握自荐信格式呢
2013/11/19 职场文书
自荐书模板
2013/12/19 职场文书
艺术学院毕业生求职信
2014/07/09 职场文书
python神经网络编程之手写数字识别
2021/05/08 Python
纯html+css实现奥运五环的示例代码
2021/08/02 HTML / CSS