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、路径或任何需要基于特定分隔符分割字符串的场景中非常有用。

相关推荐
朱涛的自习室11 小时前
212 个需求、22 万行代码:Agent 接管开源项目的 19 天
android·前端·人工智能
这个DBA有点耶12 小时前
信创场景下数据同步软件怎么选?对比开源CDC与原生闭环工具的结构性差异
数据库·mysql·架构
多客:duokelijie12 小时前
代练订单系统选型思路:跨品类游戏接入、订单分层管理、自动结算逻辑拆解!
数据库·mysql·微信小程序·前端框架·uni-app·php·持续部署
PingCAP12 小时前
平凯星辰上榜!2026 年胡润全球独角兽企业
数据库
PingCAP12 小时前
轨道交通 AFC 系统升级,平凯 Loop 把跨部门协同变成可追溯闭环
数据库
java_logo14 小时前
Docker 部署 CloudBeaver:轻松搭建网页数据库管理平台
数据库·docker·容器·数据库管理·dbeaver·轩辕镜像·cloudbeaver
李白客15 小时前
AI 数据库落地 NL2SQL:准确率卡在四成,问题在表注释不在模型
数据库
FluxDB15 小时前
FluxDB vs DBX vs DBeaver:GPUI、Tauri、Eclipse 三种技术栈实测
数据库·mysql
杨航 AI15 小时前
JEV的用法
java·前端·数据库