mysql字符串处理函数LOCATE、POSITION、INSTR使用实例
时间:2018-09-20
本文章向大家介绍mysql字符串处理函数,LOCATE,POSITION,INSTR函数都是获取子串 substr在字符串 str中第一次出现的位置,那么他们有什么区别呢?
1.LOCATE函数
LOCATE(substr,str) 返回子串 substr 在字符串 str 中第一次出现的位置。如果子串 substr 在 str 中不存在,返回值为 0。如果substr或str为NULL,则返回NULL。(从1开始)。
例如:
mysql> SELECT LOCATE('bar', ‘foobarbar');
-> 4
mysql> SELECT LOCATE('xbar', ‘foobar');
-> 0
LOCATE(substr,str,pos) 返回子串 substr 在字符串 str 中的第 pos 位置后第一次出现的位置。如果 substr 不在 str 中返回 0 。如果substr或str为NULL,则返回NULL。
mysql> SELECT LOCATE('bar', ‘foobarbar',5);
-> 7
2.POSITION函数
POSITION(substr IN str) 等价于 LOCATE(substr,str)。(两者用法完全一样)
3.INSTR函数
INSTR(str,substr) 返回字符串str中第一次出现子字符串substr的位置。 这与LOCATE()的双参数形式相同,只是参数的顺序相反。
示例:
1 SELECT position('a' IN 'banana'); # 2 2 SELECT locate('a', 'banana'); # 2 3 SELECT locate('a', 'banana', 3); # 4 4 SELECT locate('x', 'banana'); # 0 5 SELECT locate(1, 'banana'); # 0 6 SELECT locate(NULL , 'banana'); # null 7 SELECT locate('a' , NULL ); # null 8 SELECT instr('banana', 'a'); # 2 9 SELECT instr('banana', 'e'); # 0
- 简单易学的机器学习算法——线性可分支持向量机
- 基于gensim的Doc2Vec简析,以及用python 实现简要代码
- 关于db link权限分配的苦旅(一) (r7笔记第42天)
- Java设计模式-责任链模式
- Java设计模式-策略模式
- CPU 100%负载的性能优化分析(r7笔记第40天)
- Sklearn-train_test_split随机划分训练集和测试集
- 使用shell来定制dbms_sqltune(r7笔记第39天)
- 简单易学的机器学习算法——分类回归树CART
- Java设计模式-状态模式
- DBA和开发同事的一些代沟(四) (r7笔记第36天)
- python获取文件所在目录和文件名,以及检索当前文件名的方法
- 数据同步中的误导(r7笔记第34天)
- java读取xml文件
- MySQL 教程
- MySQL 安装
- MySQL 管理与配置
- MySQL PHP 语法
- MySQL 连接
- MySQL 创建数据库
- MySQL 删除数据库
- MySQL 选择数据库
- MySQL 数据类型
- MySQL 创建数据表
- MySQL 删除数据表
- MySQL 插入数据
- MySQL 查询数据
- MySQL where 子句
- MySQL UPDATE 查询
- MySQL DELETE 语句
- MySQL LIKE 子句
- mysql order by
- Mysql Join的使用
- MySQL NULL 值处理
- MySQL 正则表达式
- MySQL 事务
- MySQL ALTER命令
- MySQL 索引
- MySQL 临时表
- MySQL 复制表
- 查看MySQL 元数据
- MySQL 序列 AUTO_INCREMENT
- MySQL 处理重复数据
- MySQL 及 SQL 注入
- MySQL 导出数据
- MySQL 导入数据
- MYSQL 函数大全
- MySQL Group By 实例讲解
- MySQL Max()函数实例讲解
- mysql count函数实例
- MYSQL UNION和UNION ALL实例
- MySQL IN 用法
- MySQL between and 实例讲解
- ubuntu16.04自动设置行号的步骤详解
- CentOS 8安装ZABBIX4.4的指南
- Linux 3.X/4.x/5.x 忘记宝塔面板密码的解决方法
- Linux中grep和egrep命令详解
- centos8 使用yum 安装 mongodb 4.2的方法
- 在Linux环境下采用压缩包方式安装JDK 13的方法
- Linux下强制杀死进程的方法详解
- Jdk1.8的安装简易教程(Linux和windows)
- Linux中的awk数组的基本使用方法
- Linux查看分区文件系统类型的方法总结
- Linux更改账户密码实例详解
- linux epoll机制详解
- linux IPC之socket解析及实例代码
- python 舆情分析 nlp主题分析 (3) --gensim库的简单使用
- apache下面二级目录部署react/vue的方法