当前位置:首页 > 编程教程 > mysql技术文章 > MySQL截取和拆分字符串函数用法示例

MySQL截取和拆分字符串函数实例讲解

  • 发布时间:
  • 作者:码农之家
  • 点击:68

这篇文章主要知识点是关于MySQL、截取字符串、拆分字符串、函数、的内容,如果大家想对相关知识点有系统深入的学习,可以参阅以下电子书

MySQL 5.6从零开始学
  • 类型:数据库大小:175.1 MB格式:PDF作者:刘增杰,李坤
立即下载

MySQL截取和拆分字符串函数用法示例

本文实例讲述了MySQL截取和拆分字符串函数用法。分享给大家供大家参考,具体如下:

首先说截取字符串函数:

SUBSTRING(commentid,9)

这个很简单,从第9个字符开始截取到最后。SUBSTRING的参数有三个,最后一个是截取的长度,默认是到结尾,负数是倒数第几位。

接着说拆分字符串函数:

SUBSTRING_INDEX(commentid, '-', 1)

这个就稍稍复杂一些了,他的意思是以 - 进行拆分字符串,从第一个关键词开始取前面所有的字符串。如果上面的第三个参数修改为 -1,那么就是取倒数第一个。如果我们想从字符串 c-11065-50 中,取出50或者11065如何写呢?

取得50的写法:

复制代码 代码如下:
SELECT SUBSTRING_INDEX(checkid,'-',-1) FROM `check` WHERE checkid = 'c-11065-50'

取得11065的写法:
复制代码 代码如下:
SELECT SUBSTRING_INDEX(SUBSTRING_INDEX(checkid,'-',-2),'-',1) FROM check WHERE checkid = 'c-11065-50'

或者:
复制代码 代码如下:
SELECT SUBSTRING_INDEX(SUBSTRING_INDEX(checkid,'-',2),'-',-1) FROM check WHERE checkid = 'c-11065-50'

看上去比较复杂了吧,那么再来点更复杂的:

 

这下面就是组合用法了,例如我们要截取:content_13-11220-1中的13,最简单的就是:

复制代码 代码如下:
SELECT SUBSTRING_INDEX(SUBSTRING_INDEX(SUBSTRING(commentid,9), '-', 1), '-',-1) FROM check WHERE commentid = 'content_13-11220-1'

我们发现这里需要调用三次函数,有没有可以调用两次的呢。于是我们可以这样写:
复制代码 代码如下:
SELECT SUBSTRING_INDEX(SUBSTRING_INDEX(commentid, '-', 1), '_',-1) FROM check WHERE commentid = 'content_13-11220-1'

这样就可以少执行一次函数了,当我们运行的数据足够多,那么速度也就显示的很明显了。

希望本文所述对大家MySQL数据库计有所帮助。

以上就是本次给大家分享的关于java的全部知识点内容总结,大家还可以在下方相关文章里找到相关文章进一步学习,感谢大家的阅读和支持。

您可能感兴趣的文章:

  • MySQL中日期和时间戳互相转换的函数实例用法
  • python3.4用函数操作mysql5.7方法
  • mysql常用函数详细总结
  • Mysql中LAST_INSERT_ID()函数使用方法总结
  • 如何使用mysql计算时间差函数
  • MySQL中的CONCAT函数使用方法详解
  • MySQL中聚合函数count的用法技巧
  • 关于MYSQL创建函数出错如何解决
  • 怎样解决Mysql5.7中group concat函数数据被截断的问题
  • Mysql中用concat函数执行SQL注入查询的方法
  • MySQL截取字符串函数sql语句
  • 相关电子书
    学习笔记

    Copyright 2018-2020 www.xz577.com 码农之家

    版权投诉 / 书籍推广 / 赞助:520161757@qq.com