服务器之家:专注于服务器技术及软件下载分享
分类导航

Mysql|Sql Server|Oracle|Redis|MongoDB|PostgreSQL|Sqlite|DB2|mariadb|Access|数据库技术|

服务器之家 - 数据库 - Mysql - MySQL实现字符串截取的图文教程

MySQL实现字符串截取的图文教程

2022-03-05 21:06new1024kb Mysql

在实际的项目开发中有时会有对数据库某字段截取部分的需求,这种场景有时直接通过数据库操作来实现比通过代码实现要更方便快捷些,这篇文章主要给大家介绍了关于MySQL实现字符串截取的相关资料,需要的朋友可以参考下

前言

在后端开发过程中与数据库打交道乃是家常便饭,有时候会遇到只要数据库中的某条数据的一部分,这个时候有两种方式:

(1)把其读取出来后再进行相应的处理

(2)在读取的时候利用MySQL自带的函数进行处理

接下来我们就以第二种方式为列进行总结

(1)创建一个用户表,如下:

MySQL实现字符串截取的图文教程

(2)left(col_name, length) 函数:   从左往右截取。col_name是列名(必选),length是从左往右截取的长度(必选 为正整数,如果为负数则什么也没返回,下标从1开始,不是0)

A:length:整数

MySQL实现字符串截取的图文教程

B:length:负数

MySQL实现字符串截取的图文教程

(3)right(col_name, length) 函数: 从右往左截取。col_name是列名(必选),length是从右往左截取的长度(必须 为正整数,如果为负数则什么也没返回 下标从1开始,不是0)

A:length:整数

MySQL实现字符串截取的图文教程

B:length:负数

MySQL实现字符串截取的图文教程

(4)substring(col_name, start, length)函数: col_name列名(必选),start从第几个开始(必选 为整数 从1开始),length截去长度(可选,为正整数)

A:start:正整数,length未选,从左边往右边数,第三个字符开始向右边截取,直到结尾。

MySQL实现字符串截取的图文教程

B:start:负整数,length未选,从右边往左边数,第三个字符开始向右边截取,直到结尾。

MySQL实现字符串截取的图文教程

C:start:正整数,length:正整数;从左边往右边数,第三个字符开始向右边截取5个字符。

MySQL实现字符串截取的图文教程

D:start:负整数,length:正整数;从右边往左边数,第三个字符开始向右边截取3个字符。

MySQL实现字符串截取的图文教程

E:当从star开始截取,紧跟其后面的字符数<length时(与D比较)

MySQL实现字符串截取的图文教程

F:start:负整数,length:负整数;什么也没截取

MySQL实现字符串截取的图文教程

(5)substring_index(col, a, num)函数:从第num个a来分割col,当num为正整数时,从左往右分割并左往右取;num为负整数时,从右往左分割并从右往左取。

A:以hello world 的第一个‘o’来进行分割 (分割后: hell   oworld)

MySQL实现字符串截取的图文教程

B:以hello world 的第二个‘o’来进行分割 (分割后: hello w    orld)

MySQL实现字符串截取的图文教程

C:从右往左数,以第一个‘o’进行分割(分割后:hello wo         rld)

MySQL实现字符串截取的图文教程

D:从右往左数,以第二个‘o’进行分割(分割后:hello    world)

MySQL实现字符串截取的图文教程

附:mysql相关字符串截取的函数详解

1、SUBSTRING_INDEX(subStr, matchStr, index)

根据匹配的字符以及出现的位置开始截取字符串

  • subStr:    需要截取的字段
  • matchStr:  匹配的字符
  • index:     从第几个匹配的字符,为正数时从左边开始查找并向左截取,为负数时从右边开始查找并向右截取

2、LEFT(subStr,index) 

从左边开始向右截取,截至第index位(index从1开始)

  • subStr:    需要截取的字段
  • index:     停止截取的位置(包括该位置的字符)

3、RIGHT(subStr,index) 

从右边开始向左截取,截至从右边开始数第index位(index从1开始)

  • subStr:    需要截取的字段
  • index:     停止截取的位置(包括该位置的字符)

4、SUBSTRING(subStr,  index)

当index为负数时,从右边开始向左截取,截至从右边开始数第index位

当index为正数时,从左边开始向右截取,截至从左边开始数第index位

  • subStr:    需要截取的字段
  • index:     停止截取的位置(包括该位置的字符)

总结 

到此这篇关于MySQL实现字符串截取的文章就介绍到这了,更多相关MySQL字符串截取内容请搜索服务器之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持服务器之家!

原文地址:https://blog.csdn.net/qq_34430649/article/details/80358095

延伸 · 阅读

精彩推荐
  • MysqlMySQL 数据备份与还原的示例代码

    MySQL 数据备份与还原的示例代码

    这篇文章主要介绍了MySQL 数据备份与还原的相关知识,本文通过示例代码给大家介绍的非常详细,具有一定的参考借鉴价值,需要的朋友可以参考下...

    逆心2972019-06-23
  • Mysql解决MySQl查询不区分大小写的方法讲解

    解决MySQl查询不区分大小写的方法讲解

    今天小编就为大家分享一篇关于解决MySQl查询不区分大小写的方法讲解,小编觉得内容挺不错的,现在分享给大家,具有很好的参考价值,需要的朋友一起...

    Veir_dev5592019-06-25
  • MysqlMySQL数据库varchar的限制规则说明

    MySQL数据库varchar的限制规则说明

    本文我们主要介绍了MySQL数据库中varchar的限制规则,并以一个实际的例子对限制规则进行了说明,希望能够对您有所帮助。 ...

    mysql技术网4192019-11-23
  • Mysqlmysql 不能插入中文问题

    mysql 不能插入中文问题

    当向mysql5.5插入中文时,会出现类似错误 ERROR 1366 (HY000): Incorrect string value: '\xD6\xD0\xCE\xC4' for column ...

    MYSQL教程网5722019-11-25
  • MysqlERROR: Error in Log_event::read_log_event()

    ERROR: Error in Log_event::read_log_event()

    ERROR: Error in Log_event::read_log_event(): read error, data_len: 438, event_type: 2 ...

    MYSQL教程网6412020-03-13
  • Mysql详解MySQL中的分组查询与连接查询语句

    详解MySQL中的分组查询与连接查询语句

    这篇文章主要介绍了MySQL中的分组查询与连接查询语句,同时还介绍了一些统计函数的用法,需要的朋友可以参考下 ...

    GALAXY_ZMY5442020-06-03
  • MysqlMySQL锁的知识点总结

    MySQL锁的知识点总结

    在本篇文章里小编给大家整理了关于MySQL锁的知识点总结以及实例内容,需要的朋友们学习下。...

    别人放弃我坚持吖4362020-12-14
  • Mysql浅谈mysql 树形结构表设计与优化

    浅谈mysql 树形结构表设计与优化

    在诸多的管理类,办公类等系统中,树形结构展示随处可见,本文主要介绍了mysql 树形结构表设计与优化,具有一定的参考价值,感兴趣的小伙伴们可以参...

    小码农叔叔5242021-11-16