文章详情

短信预约-IT技能 免费直播动态提醒

请输入下面的图形验证码

提交验证

短信预约提醒成功

Mysql - 字符串截取、拆分

2023-08-19 07:30

关注

在开发过程中,字符串的截取虽然可以在程序代码中来做,但是如果可以在 SQL 语句中处理,又不会造成 SQL 语句变的很复杂,那自然就可以在 SQL 语句中处理,速度还会更快一点。这个就需要根据具体的业务进行衡量了

一、截取字符串:SUBSTRING(...)SUBSTR(...)MID(str,pos,len)

SUBSTRING(...)

语法:
SUBSTRING(str FROM pos FOR len)SUBSTRING(str FROM pos)SUBSTRING(str, pos)SUBSTRING(str, pos, len)

参数名解释
str需要截取的字符串
pos起始位置。 可以是正数也可以是负数。如果是正数,此函数从字符串的开头提取。 如果是负数,此函数从字符串的末尾提取
len要提取的字符数。 如果省略,将返回整个字符串(从 pos 位置开始)

举例:

  1. 从位置 2 开始,提取 3 个字符
SELECT SUBSTRING('模型资料-6' FROM 2 FOR 3)// 型资料
  1. 从末尾开始,提取 5 个字符
SELECT SUBSTRING('模型资料-6',-5,5)// 型资料-6
  1. 从位置 6 开始,提取之后的所有字符
SELECT SUBSTRING('模型资料-6',6)// 6

SUBSTR(...)

用法等同于 SUBSTRING(...),语法也相同

MID(str,pos,len)

只有这一种语法,用法等同于 SUBSTRING(...)

二、拆分字符串:SUBSTRING_INDEX(str, delim, count)

参数名解释
str需要拆分的字符串
delim分隔符,通过某字符进行拆分
count当 count 为正数,取第 n 个分隔符之前的所有字符;当 count 为负数,取倒数第 n 个分隔符之后的所有字符

举例:

  1. 取分隔符之后的字符
SELECT SUBSTRING_INDEX('模型资料-6','-',-1)// 6
  1. 取分隔符之前的字符
SELECT SUBSTRING_INDEX('模型资料-6','-',1)// 模型资料

三、替换函数:REPLACE(str,from_str,to_str)

参数名解释
str需要进行替换的字符串
from_str需要被替换的字符串
to_str需要替换的字符串

举例:

  1. 模型资料- 替换为 模型
SELECT REPLACE('模型资料-6','模型资料-','模型')// 模型6

来源地址:https://blog.csdn.net/qiaohao0206/article/details/126972272

阅读原文内容投诉

免责声明:

① 本站未注明“稿件来源”的信息均来自网络整理。其文字、图片和音视频稿件的所属权归原作者所有。本站收集整理出于非商业性的教育和科研之目的,并不意味着本站赞同其观点或证实其内容的真实性。仅作为临时的测试数据,供内部测试之用。本站并未授权任何人以任何方式主动获取本站任何信息。

② 本站未注明“稿件来源”的临时测试数据将在测试完成后最终做删除处理。有问题或投稿请发送至: 邮箱/279061341@qq.com QQ/279061341

软考中级精品资料免费领

  • 历年真题答案解析
  • 备考技巧名师总结
  • 高频考点精准押题
  • 2024年上半年信息系统项目管理师第二批次真题及答案解析(完整版)

    难度     813人已做
    查看
  • 【考后总结】2024年5月26日信息系统项目管理师第2批次考情分析

    难度     354人已做
    查看
  • 【考后总结】2024年5月25日信息系统项目管理师第1批次考情分析

    难度     318人已做
    查看
  • 2024年上半年软考高项第一、二批次真题考点汇总(完整版)

    难度     435人已做
    查看
  • 2024年上半年系统架构设计师考试综合知识真题

    难度     224人已做
    查看

相关文章

发现更多好内容

猜你喜欢

AI推送时光机
位置:首页-资讯-数据库
咦!没有更多了?去看看其它编程学习网 内容吧
首页课程
资料下载
问答资讯