【MySQL用法】Mysql字符串截取总结:left()函数、right()函数、substring()函数、substring_index()函数

本文涉及的产品
RDS MySQL Serverless 基础系列,0.5-2RCU 50GB
云数据库 RDS MySQL,集群系列 2核4GB
推荐场景:
搭建个人博客
云数据库 RDS PostgreSQL,集群系列 2核4GB
简介: 【MySQL用法】Mysql字符串截取总结:left()函数、right()函数、substring()函数、substring_index()函数

在实际的项目开发中有时会有对数据库某字段截取部分的需求,这种场景有时直接通过数据库操作来实现比通过代码实现要更方便快捷些,mysql有很多字符串函数可以用来处理这些需求,如Mysql字符串截取总结:left()、right()、substring()、substring_index()。

语法:

LEFT(str,len)

Returns the leftmost len characters from the string str, or NULL if any argument is NULL.

返回从字符串str最左边的len个字符,如果任一参数为null则返回null。

RIGHT(str,len)

Returns the rightmost len characters from the string str, or NULL if any argument is NULL.

返回从字符串str最右边的len个字符,如果任一参数为null则返回null。

实例如下:

SELECT left('www.baidu.com', 3);        # www

SELECT left(NULL , 4);            # null

SELECT left('www.baidu.com', NULL);     # null

SELECT right('www.baidu.com', 3);       # com

SELECT right(NULL , 3);           # null

SELECT right('www.baidu.com', NULL );   # null

以下为详细介绍:

一、left()函数

从左开始截取字符串

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

SELECT LEFT('www.baidu.com',8)

结果为:www.baid

二、right()函数

从右开始截取字符串

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

SELECT RIGHT('www.baidu.com',6)

结果为:du.com

三、substring()函数

截取特定长度的字符串

用法:

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

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

1.从字符串的第7个字符开始读取直至结束

SELECT SUBSTRING('www.baidu.com', 8)

结果为:du.com

2.从字符串的第8个字符开始,只取4个字符

SELECT SUBSTRING('www.baidu.com', 8, 4)

结果为:du.c

3.从字符串的倒数第6个字符开始读取直至结束

SELECT SUBSTRING('www.baidu.com', -6)

结果为:du.com

4.从字符串的倒数第6个字符开始读取,只取2个字符

SELECT SUBSTRING('www.baidu.com', -6, 2)

结果为:du

四、substring_index()函数

按关键字进行读取

用法:substring_index(str, delim, count),即:substring_index(被截取字符串,关键字,关键字出现的次数)

1.截取第二个“.”之前的所有字符

SELECT SUBSTRING_INDEX('www.baidu.com', '.', 2);

结果为:www.baidu

2.截取倒数第二个“.”之后的所有字符

SELECT SUBSTRING_INDEX('www.baidu.com', '.', -2);

结果为:baidu.com

3.如果关键字不存在,则返回整个字符串

SELECT SUBSTRING_INDEX('www.baidu.com', 'hero', 1);

结果为:www.baidu.com

 

 

完结!


相关实践学习
如何在云端创建MySQL数据库
开始实验后,系统会自动创建一台自建MySQL的 源数据库 ECS 实例和一台 目标数据库 RDS。
全面了解阿里云能为你做什么
阿里云在全球各地部署高效节能的绿色数据中心,利用清洁计算为万物互联的新世界提供源源不断的能源动力,目前开服的区域包括中国(华北、华东、华南、香港)、新加坡、美国(美东、美西)、欧洲、中东、澳大利亚、日本。目前阿里云的产品涵盖弹性计算、数据库、存储与CDN、分析与搜索、云通信、网络、管理与监控、应用服务、互联网中间件、移动服务、视频服务等。通过本课程,来了解阿里云能够为你的业务带来哪些帮助     相关的阿里云产品:云服务器ECS 云服务器 ECS(Elastic Compute Service)是一种弹性可伸缩的计算服务,助您降低 IT 成本,提升运维效率,使您更专注于核心业务创新。产品详情: https://www.aliyun.com/product/ecs
相关文章
|
25天前
|
JSON 关系型数据库 MySQL
Mysql(5)—函数
MySQL提供了许多内置的函数以帮助用户进行数据操作和分析。这些函数可以分为几类,包括聚合函数、字符串函数、数值函数、日期和时间函数、控制流函数等。
68 1
Mysql(5)—函数
|
5天前
|
关系型数据库 MySQL Serverless
MySQL函数
最常用的MySQL函数,包括聚合函数,字符串函数,日期时间函数,控制流函数等
|
9天前
|
SQL NoSQL 关系型数据库
|
1月前
|
存储 SQL 关系型数据库
MySQL 存储函数及调用
MySQL 存储函数及调用
34 3
|
1月前
|
缓存 关系型数据库 MySQL
MySQL 满足条件函数中使用查询最大值函数
MySQL 满足条件函数中使用查询最大值函数
97 1
|
20天前
|
关系型数据库 MySQL 数据库
mysql中tonumber函数使用要注意什么
在处理这类转换操作时,考虑周全,利用提供的高性能云服务器资源,可以进一步提升数据库处理效率,确保数据操作的稳定性和安全性,尤其是在处理大量数据转换和运算密集型应用时。
66 0
|
23天前
|
关系型数据库 MySQL 数据处理
企业级应用 mysql 日期函数变量,干货已整理
本文详细介绍了如何在MySQL8.0中使用DATE_FORMAT函数进行日期格式的转换,包括当日、昨日及不同时间段的数据获取,并提供了实际的ETL应用场景和注意事项,有助于提升数据处理的灵活性和一致性。
37 0
|
1天前
|
SQL 关系型数据库 MySQL
go语言数据库中mysql驱动安装
【11月更文挑战第2天】
9 4
|
25天前
|
存储 关系型数据库 MySQL
Mysql(4)—数据库索引
数据库索引是用于提高数据检索效率的数据结构,类似于书籍中的索引。它允许用户快速找到数据,而无需扫描整个表。MySQL中的索引可以显著提升查询速度,使数据库操作更加高效。索引的发展经历了从无索引、简单索引到B-树、哈希索引、位图索引、全文索引等多个阶段。
57 3
Mysql(4)—数据库索引
|
10天前
|
关系型数据库 MySQL Linux
在 CentOS 7 中通过编译源码方式安装 MySQL 数据库的详细步骤,包括准备工作、下载源码、编译安装、配置 MySQL 服务、登录设置等。
本文介绍了在 CentOS 7 中通过编译源码方式安装 MySQL 数据库的详细步骤,包括准备工作、下载源码、编译安装、配置 MySQL 服务、登录设置等。同时,文章还对比了编译源码安装与使用 RPM 包安装的优缺点,帮助读者根据需求选择最合适的方法。通过具体案例,展示了编译源码安装的灵活性和定制性。
46 2