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

  • 更新时间:2020-07-30 09:12:31
  • 编辑:庾乐语
本站精选了一篇相关的编程文章,网友厍忆南根据主题投稿了本篇教程内容,涉及到MySQL、截取字符串、拆分字符串、函数、MySQL截取和拆分字符串函数用法示例相关内容,已被105网友关注,相关难点技巧可以阅读下方的电子资料。
  • 《MySQL从入门到精通》电子资源 / 3.7 GB 推荐度:
  • 《Linux环境下Qt4图形界面与MySQL编程》代码资料 / 27.92 MB 推荐度:
  • PHP+MySQL动态网站开发从入门到精通 / 36.2 MB 推荐度:
  • MySQL8 Cookbook(中文版) / 210320 MB 推荐度:
  • MySQL入门经典 / 313.3 MB 推荐度:
  • 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数据库计有所帮助。

    相关教程

    • MySQL中日期和时间戳互相转换的函数实例用法

      这篇文章主要介绍了MySQL中日期和时间戳互相转换的函数和方法,本文分别讲解了时间戳转换成日期的方法和把日期转换为时间戳的方法,需要的朋友可以参考下

      发布时间:2019-11-12

    • python3.4用函数操作mysql5.7方法

      1 #!/usr/bin/env python 2 # -*- coding:utf-8 -*- 3 # __author__ =

      发布时间:2020-05-05

    • mysql常用函数详细总结

      以下是对mysql中的常用函数进行了汇总介绍。需要的朋友可以过来参考下

      发布时间:2020-01-17

    • Mysql中LAST_INSERT_ID()函数使用方法总结

      从名字可以看出,LAST_INSERT_ID即为最后插入的ID值,有了这个实用的函数,我们可以实现很多问题,下面我们就来深入探讨下。

      发布时间:2019-07-29

    • 如何使用mysql计算时间差函数

      MySql计算两个日期的时间差函数TIMESTAMPDIFF用法,只要用一句SQL语句就可以办到了。

      发布时间:2020-01-16

    • MySQL中的CONCAT函数使用方法详解

      这篇文章主要介绍了MySQL中的CONCAT函数使用教程,是Python入门学习中的基础知识,需要的朋友可以参考下

      发布时间:2019-10-03

    • MySQL中聚合函数count的用法技巧

      这篇文章主要介绍了Windows 10,MySQL版本是5.7.12-log环境下mysql中聚合函数count的使用和性能优化,需要的朋友可以参考下

      发布时间:2020-05-08

    • 关于MYSQL创建函数出错如何解决

      在程序开发过程中,大家有没有遇到过mysql函数不能创建,我是遇到过,是一个很麻烦的问题,上网搜了些相关资料,整理在一起了,供大家参考,帮助那些需要帮助的朋友

      发布时间:2020-01-26

    • 怎样解决Mysql5.7中group concat函数数据被截断的问题

      前几天在项目中遇到一个问题,使用 GROUP_CONCAT 函数select出来的数据被截断了,最长长度不超过1024字节,开始还以为是navicat客户端自身对字段长度做了限制的问题。后来查找出原因,解决方法

      发布时间:2020-02-27

    • Mysql中用concat函数执行SQL注入查询的方法

      这篇文章主要介绍了Mysql数据库使用concat函数执行SQL注入查询,concat函数在SQL注入查询中会有意想不到的作用,本文就起讲解它的使用,需要的朋友可以参考下

      发布时间:2019-08-02

    • MySQL截取字符串函数sql语句

      这篇文章主要介绍了MySQL 截取字符串函数的sql语句,非常不错,具有参考借鉴价值,需要的朋友可以参考下

      发布时间:2019-06-19

    用户留言