一.从左开始截取字符串

用法:left(str, length),即:left(被截取字符串, 截取长度)

mysql> SELECT LEFT('hello,world',3);
+-----------------------+
| LEFT('hello,world',3) |
+-----------------------+
| hel |
+-----------------------+
1 row in set (0.00 sec)

二.从右开始截取字符串

用法:right(str, length),即:right(被截取字符串, 截取长度)

mysql> SELECT right('hello,world',3);
+------------------------+
| right('hello,world',3) |
+------------------------+
| rld |
+------------------------+
1 row in set (0.00 sec)

三.截取特定长度的字符串

用法:

  • substring(str, pos),即:substring(被截取字符串, 从第几位开始截取)
  • substring(str, pos, length),即:substring(被截取字符串,从第几位开始截取,截取长度)

pos 正向起始值为1,反向起始值为-1

#1.从字符串的第3个字符开始读取直至结束
mysql> SELECT substring('hello,world',3);
+----------------------------+
| substring('hello,world',3) |
+----------------------------+
| llo,world |
+----------------------------+
1 row in set (0.00 sec) #2.从字符串的倒数第3个字符开始读取直至结束
mysql> SELECT substring('hello,world',-3);
+-----------------------------+
| substring('hello,world',-3) |
+-----------------------------+
| rld |
+-----------------------------+
1 row in set (0.01 sec) #3.从字符串的第3个字符开始,只取5个字符
mysql> SELECT substring('hello,world',3,5);
+------------------------------+
| substring('hello,world',3,5) |
+------------------------------+
| llo,w |
+------------------------------+
1 row in set (0.00 sec) #4.从字符串的倒数第3个字符开始,只取5个字符
mysql> SELECT substring('hello,world',-3,5);
+-------------------------------+
| substring('hello,world',-3,5) |
+-------------------------------+
| rld |
+-------------------------------+
1 row in set (0.00 sec)

四.按关键字进行读取

用法:

  • substring_index(str, delim, count),即:substring_index(被截取字符串,关键字,关键字出现的次数)
#1.截取第二个“|”之前的所有字符
mysql> SELECT substring_index('1|2|3|4|5','|',2);
+------------------------------------+
| substring_index('1|2|3|4|5','|',2) |
+------------------------------------+
| 1|2 |
+------------------------------------+
1 row in set (0.00 sec) #2.截取倒数第二个“|”之后的所有字符
mysql> SELECT substring_index('1|2|3|4|5','|',-2);
+-------------------------------------+
| substring_index('1|2|3|4|5','|',-2) |
+-------------------------------------+
| 4|5 |
+-------------------------------------+
1 row in set (0.00 sec) #3.如果关键字不存在,则返回整个字符串
mysql> SELECT substring_index('1|2|3|4|5|','-',2);
+-------------------------------------+
| substring_index('1|2|3|4|5|','-',2) |
+-------------------------------------+
| 1|2|3|4|5| |
+-------------------------------------+
1 row in set (0.00 sec)

Mysql 中字符串的截取的更多相关文章

  1. MySQL中字符串与数字比较的坑

    公司项目代码中,某枚举字段数据库表中类型是char(1),在代码中,误以为是TINYINT,所以用数字筛选,后来发现结果不对.发现了一个现象,用数字0筛选会把所有的记录给筛选出来. 经过排查发现是在M ...

  2. <经验杂谈>Mysql中字符串处理的几种处理方法concat、concat_ws、group_concat

    Mysql中字符串处理的几种处理方法concat.concat_ws.group_concat以下详情: MySQL中concat函数使用方法:CONCAT(str1,str2,-) 返回结果为连接参 ...

  3. Mysql中字符串正确的连接方法

    虽然SQL server和My sql的语句基本都一致,但是仍然存在一些小区别.就如字符串的连接来说,SQL server中的字符串连接是使用“+”来连接,不带引号sql server是做加法运算.而 ...

  4. c++中字符串的截取:

    c++中字符串的截取: string 类提供字符串处理函数,利用这些函数,程序员可以在字符串内查找字符,提取连续字符序列(称为子串),以及在字符串中删除和添加.我们将介绍一些主要函数. 1.函数fin ...

  5. Python中字符串的截取,列表的截取

    字符串的截取 Python中的字符串用单引号 ' 或双引号 " 括起来,同时使用反斜杠 \ 转义特殊字符. 字符串的截取的语法格式如下: 变量[头下标:尾下标] 索引值以 0 为开始值,-1 ...

  6. python中字符串操作--截取,查找,替换

    python中,对字符串的操作是最常见的,python对字符串操作有自己特殊的处理方式. 字符串的截取 python中对于字符串的索引是比较特别的,来感受一下: s = '123456789' #截取 ...

  7. js中字符串的截取

    当需要从一组数据中移除到符合条件的某一个数据的时候,在这种情况下如何进行截取呢? 基本思路: ①将其通过特定的符号,将一组字符串进行拼接,或者用","或者用"+" ...

  8. MySQL中字符串函数详细介绍

    MySQL字符串函数对于针对字符串位置的操作,第一个位置被标记为1. ASCII(str)返回字符串str的 最左面字符的ASCII代码值.如果str是空字符串, 返回0.如果str是NULL,返回N ...

  9. MySQL的字符串函数截取字符

    函数: 1.从左开始截取字符串 left(str, length) 说明:left(被截取字段,截取长度) 例:select left(content,200) as abstract from my ...

随机推荐

  1. Centos 7.4搭建es7.12.0+Skywalking7.8.5

    Skywalking整体架构图和分布式追踪系统原理:https://blog.csdn.net/weixin_39866487/article/details/111581322 软件包版本1.ela ...

  2. python基础之pip、.pyc、三元运算、进制、一切皆对象、可变与不可变类型

    一.pip(下载工具==yum) 1.重点(必须掌握的) 列出已安装的包 pip list 安装要安装的包 pip install xxx 安装特定版本 pip install django==1.1 ...

  3. Lua中的面向对象编程详解

    简单说说Lua中的面向对象 Lua中的table就是一种对象,看以下一段简单的代码: 复制代码代码如下: local tb1 = {a = 1, b = 2}local tb2 = {a = 1, b ...

  4. Spring 是什么?

    概述 Spring 是最受欢迎的企业级 Java 应用程序开发框架,数以百万的来自世界各地的开发人员使用 Spring 框架来创建性能好.易于测试.可重用的代码. Spring 框架是一个开源的 Ja ...

  5. 深入 Go 语言 defer 实现原理

    转载请声明出处哦~,本篇文章发布于luozhiyun的博客: https://www.luozhiyun.com/archives/523 本文使用的go的源码 1.15.7 介绍 defer 执行规 ...

  6. 吐血整理!Python常用第三方库,码住!!!

    ​ Python作为一种编程语言近年来越来越受欢迎,它为什么这么火? 其中一个重要原因就是因为Python的库丰富--Python语言提供超过15万个第三方库,Python库之间广泛联系.逐层封装.几 ...

  7. Raft: 一点阅读笔记

    前言 如果想要对Raft算法的了解更深入一点的话,仅仅做6.824的Lab和读<In Search of an Understandable Consensus Algorithm>这篇论 ...

  8. 摄像头Camera 标定Calibration原理Theory

    摄像头Camera 标定Calibration原理Theory cv2.cameraCalibration Pinhole camera calibration calls camera vision ...

  9. NVIDIA GPU的快速傅立叶变换

    NVIDIA GPU的快速傅立叶变换 cuFFT库提供GPU加速的FFT实现,其执行速度比仅CPU的替代方案快10倍.cuFFT用于构建跨学科的商业和研究应用程序,例如深度学习,计算机视觉,计算物理, ...

  10. js正则中文

    hi,大家好 今天跟小伙伴们浅谈以下如何用正则表示中文以及如何去运用.众所周知中文在计算机中是不能进行存储的.那我们是以什么办法让我们和计算机进行更好的沟通呢?常用的几种中文编码格式utf-8编码ut ...