MySQL的字符串函数(十一)中

本文涉及的产品
RDS MySQL Serverless 基础系列,0.5-2RCU 50GB
云数据库 RDS MySQL,集群版 2核4GB 100GB
推荐场景:
搭建个人博客
云数据库 RDS MySQL,高可用版 2核4GB 50GB
简介: MySQL的字符串函数(十一)

二.七 转大写 upper(s1),ucase(s1)


将s1 字符串转换成大写。 upper(s1) 与ucase() 用法是一样的。


  select upper('abc123'),upper('aEdBc'),upper('两个蝴蝶飞');


20191126150626627.png


二.八 获取最左边n长度的字符串 left(s1,n)


将s1字符串,从左边数 n个长度,返回。 如果n 数值大于 char_length(s1),就全部提取。


  select left('abc123',3),left('两个蝴蝶飞',4),left('岳泽霖',10);


20191126150712888.png


二.九 获取最右边n长度的字符串 right(s1,n)


将s1字符串,从右边数n个长度,返回。 如果n数值大于 char_length(s1),就全部提取返回。


  select right('abc123',3),right('两个蝴蝶飞',4),right('岳泽霖',10);


20191126150649955.png


二.十 填充左边部分 LPAD(s1,len,s2)


对于s1字符串,如果char_length(s1)<len, 那么就在s1字符串左边连续填充字符串s2, 使填充后的字符串的长度为len.


如果 char_length(s1)>=len, 那么就从 s1字符串的左边截取len个长度的字符串,使长度变成len.


  select lpad('abc123',4,'**'),lpad('abc123',6,'**'),lpad('两个蝴蝶飞',20,'*');


20191126150723275.png


二.十一 填充右边部分 RPAD(s1,len,s2)


对于s1字符串,如果char_length(s1)<len, 那么就在s1字符串右边连续填充字符串s2, 使填充后的字符串的长度为len.


如果 char_length(s1)>=len, 那么就从 s1字符串的左边截取len个长度的字符串,使长度变成len.


  select rpad('abc123',4,'**'),rpad('abc123',6,'**'),rpad('两个蝴蝶飞',20,'*');


2019112615075545.png


二.十二 删除空格 ltrim(s1),rtrim(s2),trim(s3)


ltrim() 删除的是左边的空格, rtrim() 删除的是右边的空格, trim()删除的是左右两边的空格。 但不能删除中间的空格。


不太好注意看, 用concat()函数,左右两边各连接一个 1,方便查看。


  select concat('1','    两个蝴蝶飞    ','1'),concat('1',ltrim('    两个蝴蝶飞    '),'1'),
  concat('1',rtrim('    两个蝴蝶飞    '),'1'),concat('1',trim('    两个  蝴蝶飞    '),'1');


20191126150805779.png


二.十三 删除指定的字符串 trim(s1 from s2)


将s2字符串,如果左右两边的开头是s1的话,就删除s1字符串。 如果s1不指定的话,就默认删除空格。 trim(s3) 实际上就是 trim(’ ’ from s3). 不能删除中间的。 删除时,也不是只删除一次,如果s2删除掉s1之后,发现开头和结尾还是s1,那么会继续删除的。


  select trim('ab' from 'abc1234ab'),trim('ab' from 'ababab123abab3dabab'),trim(' ' from '  两个蝴蝶飞   ');


20191126150810999.png


二.十四 重复生成字符串 repeat(s1,n)


生成 n个s1字符串,将它进行连接。 如果 n<=0,返回空字符串, 如果 s1或者n为null,那么返回 null.


  select repeat('两个蝴蝶飞',3),repeat('abc',0),repeat(null,3),repeat('abc',null);


2019112615081816.png


二.十五 空格函数 space(n)


生成 n个空格,相当于 repeat(’’,n). 是repeat()的一种特殊形式。


  select concat('(',space(10),')'),char_length(space(10));


20191126150824108.png


二.十六 替换字符串 replace(s1,s2,s3)


在 s1字符串中, 如果存在s2字符串,那么就将s2字符串替换为s3字符串。 注意,是全部替换。 如果s1里面,没有s2字符串,那么就不替换,仍然返回s1字符串。


  select replace('abcd','ab','cd'),replace('ababCdabEfab','ab','cd'),replace('cdefg','ab','cd');


20191126150832299.png


二.十七 比较字符串大小 strcmp(s1,s2)


strcmp 实际就是 string+compare


如果s1==s2, 就返回0. 如果s1<s2,就返回-1, s1>s2,就返回1. 按照ASCII码进行比较, 不区分大小写。


  select strcmp('abc','Abc'),strcmp('abc','abcd'),strcmp('abc','abc'),strcmp('abc123','123');


20191126150840831.png


二.十八 字符串截取 substr(str,index,len), substring(str,index,len) 和mid(str,index,len)


截取字符串。 三者的使用方式是一样的。


如果有两个参数, substr(str,index), 表示从 index处开始截取,到最后结束。


如果有三个参数, substr(str,index,len), 表示从index处开始截取,只截取 len个长度。


截取的顺序,都是从左往右截取。 其中,index可以为正,也可以为负,为负表示从后往前数。


如果 len<=0, 那么返回的是空字符串。


mysql 默认开始的位置是1.


  select substr('abcdefg',3),substring('abcdefg',3,3), substring('abcdefg',-5), substring('abcdefg',-5,4);


20191126150853359.png


‘abcdefg’, 正数第3个,是 c. 倒数第5个是,c

相关实践学习
基于CentOS快速搭建LAMP环境
本教程介绍如何搭建LAMP环境,其中LAMP分别代表Linux、Apache、MySQL和PHP。
全面了解阿里云能为你做什么
阿里云在全球各地部署高效节能的绿色数据中心,利用清洁计算为万物互联的新世界提供源源不断的能源动力,目前开服的区域包括中国(华北、华东、华南、香港)、新加坡、美国(美东、美西)、欧洲、中东、澳大利亚、日本。目前阿里云的产品涵盖弹性计算、数据库、存储与CDN、分析与搜索、云通信、网络、管理与监控、应用服务、互联网中间件、移动服务、视频服务等。通过本课程,来了解阿里云能够为你的业务带来哪些帮助 &nbsp; &nbsp; 相关的阿里云产品:云服务器ECS 云服务器 ECS(Elastic Compute Service)是一种弹性可伸缩的计算服务,助您降低 IT 成本,提升运维效率,使您更专注于核心业务创新。产品详情: https://www.aliyun.com/product/ecs
相关文章
|
6月前
|
前端开发 关系型数据库 MySQL
MySQL中常用函数之字符串函数使用详解
MySQL中常用函数之字符串函数使用详解
93 0
|
19天前
|
关系型数据库 MySQL 数据库
MySQL数据库——函数-字符串函数、数值函数、日期函数、流程函数
MySQL数据库——函数-字符串函数、数值函数、日期函数、流程函数
14 2
|
22天前
|
SQL 关系型数据库 MySQL
MySQL魔法秀:揭秘常用字符串函数的神奇操作
MySQL魔法秀:揭秘常用字符串函数的神奇操作
9 1
|
1月前
|
SQL 关系型数据库 MySQL
|
1月前
|
SQL 关系型数据库 MySQL
MySQL 数值函数,字符串函数与多表查询
MySQL 数值函数,字符串函数与多表查询
20 0
|
10月前
|
关系型数据库 MySQL
[MySQL]字符串函数
[MySQL]字符串函数
|
1月前
|
SQL 关系型数据库 MySQL
MySQL常用函数 【字符串函数丨数值函数丨日期函数丨流程函数】
MySQL常用函数 【字符串函数丨数值函数丨日期函数丨流程函数】
35 0
|
1月前
|
SQL 关系型数据库 MySQL
⑥ 【MySQL函数】字符串函数、数值函数、日期函数、流程函数
⑥ 【MySQL函数】字符串函数、数值函数、日期函数、流程函数
36 0
|
6月前
|
SQL 关系型数据库 MySQL
Mysql数据库 5.SQL语言聚合函数 语言日期-字符串函数
Mysql数据库 5.SQL语言聚合函数 语言日期-字符串函数
51 0
|
12月前
|
Serverless
MySQL-字符串函数
MySQL-字符串函数