news 2026/5/12 7:22:02

MySQL字符串分割入门:3种简单方法详解

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
MySQL字符串分割入门:3种简单方法详解

快速体验

  1. 打开 InsCode(快马)平台 https://www.inscode.net
  2. 输入框内输入如下内容:
编写一个MySQL新手教程,从简单到复杂介绍字符串分割:1) 使用SUBSTRING_INDEX分割固定格式字符串 2) 处理多层嵌套的分隔符 3) 将分割结果存入临时表。每个步骤都需要详细的SQL示例和解释说明,确保新手能够理解。
  1. 点击'项目生成'按钮,等待项目生成完整后预览效果

今天在整理数据时遇到一个常见需求:如何把一个包含分隔符的字符串拆分成多部分?比如"苹果,香蕉,橙子"这样的字段,需要拆成单独的水果名称。作为MySQL新手,我研究了几种方法,分享给同样刚入门的朋友们。

  1. 最基础的SUBSTRING_INDEX函数这个函数就像字符串的剪刀,三个参数分别是:待剪的字符串、分隔符、剪到第几次出现分隔符。比如要获取"a-b-c-d"中第二个"-"之前的内容:
SELECT SUBSTRING_INDEX('a-b-c-d', '-', 2); -- 返回"a-b"

要获取最后一部分也很简单,用负数表示从右往左数:

SELECT SUBSTRING_INDEX('a-b-c-d', '-', -1); -- 返回"d"
  1. 处理多层嵌套的分隔符当遇到像"北京|海淀区|中关村"这样的地址数据时,可以组合使用SUBSTRING_INDEX:
SELECT SUBSTRING_INDEX(address, '|', 1) AS province, SUBSTRING_INDEX(SUBSTRING_INDEX(address, '|', 2), '|', -1) AS district, SUBSTRING_INDEX(address, '|', -1) AS detail FROM locations;
  1. 将分割结果存入临时表对于需要重复使用的分割结果,可以创建临时表存储:
CREATE TEMPORARY TABLE split_results AS SELECT id, SUBSTRING_INDEX(products, ',', 1) AS product1, SUBSTRING_INDEX(SUBSTRING_INDEX(products, ',', 2), ',', -1) AS product2, SUBSTRING_INDEX(products, ',', -1) AS product3 FROM orders;

实际使用时要注意几个坑: - 分隔符前后可能有空格,建议先用TRIM处理 - 字段可能包含NULL值,需要加IFNULL判断 - 分隔符数量不固定时,建议先用LENGTH配合REPLACE计算分隔符数量

我在InsCode(快马)平台上测试这些SQL时,发现它的MySQL环境开箱即用,还能直接看到执行结果,特别适合新手做这种片段测试。特别是处理复杂字符串时,可以随时修改SQL立刻看到效果,比在本地搭环境方便多了。

对于需要持续使用的查询,比如定期分析日志字段,可以保存为项目一键部署成API服务。上次我把一个日志分析SQL部署成服务后,前端同事直接调用就能获取结构化数据,省去了每次手动查询的麻烦。

快速体验

  1. 打开 InsCode(快马)平台 https://www.inscode.net
  2. 输入框内输入如下内容:
编写一个MySQL新手教程,从简单到复杂介绍字符串分割:1) 使用SUBSTRING_INDEX分割固定格式字符串 2) 处理多层嵌套的分隔符 3) 将分割结果存入临时表。每个步骤都需要详细的SQL示例和解释说明,确保新手能够理解。
  1. 点击'项目生成'按钮,等待项目生成完整后预览效果
版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/5/2 19:37:35

科研图像分析利器Fiji完全配置指南

科研图像分析利器Fiji完全配置指南 【免费下载链接】fiji A "batteries-included" distribution of ImageJ :battery: 项目地址: https://gitcode.com/gh_mirrors/fi/fiji 在生命科学研究领域,科学图像分析是揭示微观世界奥秘的关键手段。Fiji作为…

作者头像 李华
网站建设 2026/5/3 17:14:10

6大维度解锁游戏性能:OpenSpeedy全场景优化指南

6大维度解锁游戏性能:OpenSpeedy全场景优化指南 【免费下载链接】OpenSpeedy 项目地址: https://gitcode.com/gh_mirrors/op/OpenSpeedy 在3A大作的战场上,每秒帧率的差异可能就是胜负的分野。当你在《赛博朋克2077》的夜之城街头遭遇突然卡顿&a…

作者头像 李华
网站建设 2026/5/11 21:44:50

3步解决Nacos密钥问题,效率提升90%

快速体验 打开 InsCode(快马)平台 https://www.inscode.net输入框内输入如下内容: 开发一个Nacos配置检查工具,专门用于快速诊断和修复Nacos.Core.Auth.Plugin.Nacos.Token.Secret.Key为空的问题。功能要求:1) 一键检测所有相关配置 2) 自动…

作者头像 李华
网站建设 2026/4/27 23:20:07

Llama3-8B镜像推荐:vLLM加速+WebUI开箱即用体验

Llama3-8B镜像推荐:vLLM加速WebUI开箱即用体验 1. 为什么这款Llama3-8B镜像值得你立刻试一试 你有没有过这样的经历:想快速跑一个大模型做英文对话、写点代码片段,或者测试下指令遵循能力,结果卡在环境配置上两小时——CUDA版本…

作者头像 李华
网站建设 2026/4/29 2:52:41

Llama3-8B新闻摘要生成:媒体行业应用部署教程

Llama3-8B新闻摘要生成:媒体行业应用部署教程 1. 为什么媒体从业者需要Llama3-8B做新闻摘要? 你是不是也遇到过这些情况? 每天要盯几十个信源,从新华社、路透社到行业垂直媒体,光是通读标题就耗掉一上午&#xff1b…

作者头像 李华
网站建设 2026/5/2 16:02:46

如何用AI快速搭建MINIO文件存储系统

快速体验 打开 InsCode(快马)平台 https://www.inscode.net输入框内输入如下内容: 创建一个基于MINIO的对象存储系统部署方案。需要包含:1. Docker Compose配置文件 2. 基本的用户权限设置 3. 存储桶管理API 4. 文件上传/下载接口 5. 性能优化建议。使…

作者头像 李华