SUBSTRING_INDEX()在MySQL中的用法

语法:

SUBSTRING_INDEX() 是 MySQL 中的一个字符串函数,它返回一个字符串,该字符串包含从字符串的开始或结束到指定的子字符串出现指定次数为止的部分。这个函数的语法如下:

sql 复制代码
SUBSTRING_INDEX(string, delimiter, count)
  • string:要操作的原始字符串。
  • delimiter:用作分隔符的子字符串。
  • count:一个整数,指定从哪个部分开始提取子字符串。如果count是正数,函数从字符串的开始处向结束处返回子字符串;如果count是负数,函数从字符串的结束处向开始处返回子字符串。

以下是一些 SUBSTRING_INDEX() 函数的用法示例:

1. 从字符串开始处提取

sql 复制代码
SELECT SUBSTRING_INDEX('www.example.com', '.', 2);

这将返回 www.example,因为函数从字符串的开始处提取了第一个和第二个.之间的部分。

2. 从字符串结束处提取

sql 复制代码
SELECT SUBSTRING_INDEX('www.example.com', '.', -1);

这将返回 com,因为函数从字符串的结束处提取了最后一个.之后的部分。

3. 提取多个部分

sql 复制代码
SELECT SUBSTRING_INDEX('www.example.com', '.', 3);

这将返回 www.example.com,因为函数从字符串的开始处提取了第一个和第三个.之间的所有部分。

4. 使用空字符串作为分隔符

sql 复制代码
SELECT SUBSTRING_INDEX('wwwexamplecom', '', 2);

这将返回 w,因为函数从字符串的开始处提取了第一个空字符串(实际上是第一个字符)。

5. 使用多个字符作为分隔符

sql 复制代码
SELECT SUBSTRING_INDEX('www_example_com', '_', 2);

这将返回 www_example,因为函数从字符串的开始处提取了第一个和第二个_之间的部分。

6. 当分隔符不存在时

sql 复制代码
SELECT SUBSTRING_INDEX('wwwexamplecom', '.', 1);

这将返回整个字符串 wwwexamplecom,因为.作为分隔符在字符串中不存在。

SUBSTRING_INDEX() 函数在处理 URL、路径或任何需要基于特定分隔符分割字符串的场景中非常有用。

相关推荐
Y3815326623 小时前
MySQL 慢查询排查实战:EXPLAIN 看懂 type 与 Extra,一个字段定位性能问题
数据库·mysql
Logintern094 小时前
PostgreSQL 的 ORDER BY 多列排序
数据库·postgresql
今天AI了吗5 小时前
DeepSeek Harness 深度解析:从评测架构到实战落地
java·网络·数据库·人工智能·架构·java-ee
数据库小学妹5 小时前
为什么MySQL索引用B+树?从存储底层讲透原理
数据库·mysql·b+树·索引优化·磁盘io·数据库原理
BestHeaker5 小时前
制造业 MES 开发入门:和互联网业务开发的 5 个本质差异(一)
数据库·经验分享·制造业·mes
自动化监测Learner6 小时前
Navicat Premium 17 中文版安装教程(2026最新版)
java·linux·数据库
张文是假的啊6 小时前
常用JPA注解解释
数据库
Allen_LVyingbo8 小时前
医疗AI基础2026-构建可靠智能体的编程路径(上)
大数据·数据库·人工智能·python·自动化
疯狂打码的少年8 小时前
【数据库技术】多值依赖与第四范式(4NF)
数据库·笔记·算法