习惯性朴实简单!一起学习MySQL常见单行函数,字符数学日期流程控制

本文涉及的产品
RDS MySQL Serverless 基础系列,0.5-2RCU 50GB
RDS MySQL Serverless 高可用系列,价值2615元额度,1个月
简介: 习惯性朴实简单!一起学习MySQL常见单行函数,字符数学日期流程控制

文章目录


一、字符函数

二、数学函数

三、日期函数

四、其他函数

五、流程控制函数


一、字符函数



79dec1722c4f4004a7fc115f8158dac3.png


1、大小写控制函数


①UPPER():转换成大写


SELECT UPPER('Hello');

0e8e6387063842c498af50cdac10a42e.png


②LOWER():转换成小写


SELECT LOWER('Hello');

25691140e10a4000b310b488a53f52de.png



2、字符控制函数


①LENGTH():获取参数值的字节个数


SELECT LENGTH('叶绿体不忘呼吸aaaa');

c8b87b5e806e4afcaf7b90998e60ebdb.png


②CONCAT():拼接字符串


SELECT CONCAT('Hello','世界') AS result;

db53057f66a34ce6ad6150f8f88b6d8d.png


③SUBSTR():截取(MySQL里索引是从1开始的,而不是0)


#从第4个开始截取,截取后面全部
SELECT SUBSTR('我相信光',4);


6b676c62433c4736b7373ef5096a01f2.png

6b676c62433c4736b7373ef5096a01f2.png


#从第1个开始截取,截取3个
SELECT SUBSTR('我相信光',1,3);


bfccc9de35b54c9da7fb48a29615267c.png


④INSTR():返回子串在主串中第一次出现的索引,如果不存在,则返回0


SELECT INSTR('国足10月13日客战沙特','沙特') AS result;

16be22a4aec441b7803ac3649eafbc96.png


⑤TRIM():去除字符串前后某字符


SELECT TRIM('a' FROM 'aaaaa叶aa绿体aaaaa') AS result;

35eae04e70e84f28aafba16cbd83894e.png


#去空格
SELECT TRIM('    叶aa绿体a    ') AS result;


a1ed3343e7cf4325ba24483f95e9f987.png

a1ed3343e7cf4325ba24483f95e9f987.png


⑥LPAD():用指定的字符左填充指定长度,RPAD()则是右填充


SELECT LPAD('叶绿体',9,'a') AS result;


fc50f1ac38f84f6eb5e593ef9a66e814.png

⑦REPLACE():替换


SELECT REPLACE('a叶aaa绿体aaaa','a','B') AS result;


db912be7d86f40c78a4f8156465d53ed.png


二、数学函数


①ROUND():四舍五入


#默认保留一位小数
SELECT ROUND(1.62) AS result;


7b572b92a0504419869b6e4373dae465.png

7b572b92a0504419869b6e4373dae465.png


#保留两位小数
SELECT ROUND(1.627,2) AS result;


92d3616b501248eba2820f377db4d0e3.png


②CEIL():向上取整,返回大于等于该数的最小整数


SELECT CEIL(1.002) AS result;

906583f9df654268a74c93dcd8019fea.png


③FLOOR():向下取整,返回小于等于该数的最大整数


SELECT FLOOR(1.002) AS result;

28935615ef05441e89dff506ab3e0fe8.png


④TRUNCATE():截断


SELECT TRUNCATE(1.699,1) AS result;

39f7c0366fa3487992f8e748518be46e.png


⑤MOD():取余,等价于%


SELECT MOD(10,-3) AS result;

28935615ef05441e89dff506ab3e0fe8.png


三、日期函数


c8844eb35b634672a4010766fc4c6f96.png


①NOW():返回当前系统的日期和时间


SELECT NOW();


2198d3681dc642e6bac4afa8346b2669.png


②CURDATE():返回当前系统日期,不包含时间


SELECT CURDATE();

b96cd98d05ac4c50aae3486fbc6a570b.png


③CURTIME():返回当前系统时间,不包括日期


SELECT CURTIME();

7117a79f6d7040fd9650573030589641.png


⑦YREAR():获取指定日期字段的年


SELECT YEAR(NOW());


005104abc3aa40af87b347df79ab0887.png


SELECT YEAR('2021-09-30') AS result;


bb7232c1f4074f86afbb6a12b02d04ec.png

⑧MONTH():获取指定日期字段的月,MONTHNAME()则可以返回月份英文


SELECT MONTH('2021-09-30') AS result;


e6b0ff5af0b04480980e8a08da1e76ca.png


SELECT MONTHNAME('2021-09-30') AS result;

0c7a6df0c68e4ae486e6226d0f90cd1c.png


日,小时,分钟,秒钟都可以同上


⑨STR_TO_DATE():将字符按照指定的格式转为日期


#相当于是解析:两个参数格式要匹配
SELECT STR_TO_DATE('9-30 2021','%m-%d %Y') AS result;

3615cf5d79a74717b152b3b38c29ac1b.png


⑩DATE_FORMAT():将日期转换成字符


#相当于是格式化
SELECT DATE_FORMAT(NOW(),'%Y年%m月%d日') AS result;


aa1b206a8d41466ca28818b2959c4601.png


四、其他函数


#查看版本
SELECT VERSION();
#查看数据库
SELECT DATABASE();
#查看用户
SELECT USER();


五、流程控制函数


①IF():判断,第一个参数是条件,第二个是true的返回,第三个是false的返回


SELECT IF(10>5,'大','小') AS result;

d921500fc052474d99f84758f9b0754e.png


②CASE()使用一:类似于Java中switch


CASE 要判断的
WHEN 常量1 THEN 语句1;或者要显示的值1
...
ELSE 语句;或者要显示的值
END

示例


#示例为要显示的值,不加‘;’
SELECT `last_name`,`salary`,`department_id`,
CASE `department_id`
WHEN 100 THEN `salary`*(1+0.8)
WHEN 90 THEN `salary`*(1+0.6)
WHEN 80 THEN `salary`*(1+0.4)
WHEN 70 THEN `salary`*(1+0.2)
ELSE `salary`
END AS 最终工资
FROM employees;


③CASE()使用一:类似于Java中多重if


CASE 
WHEN 条件1 THEN SELECT 语句1;或者要显示的值1
...
ELSE 语句;或者要显示的值
END


示例


#示例为要显示的值,不加‘;’
SELECT `last_name`,`salary`,
CASE
WHEN `salary`>20000 THEN 'A级别'
WHEN `salary`>15000 THEN 'B级别'
WHEN `salary`>10000 THEN 'C级别'
ELSE 'D级别'
END AS 等级
FROM employees;


697b4d223405494da42e45c35d2cc156.png



相关实践学习
基于CentOS快速搭建LAMP环境
本教程介绍如何搭建LAMP环境,其中LAMP分别代表Linux、Apache、MySQL和PHP。
全面了解阿里云能为你做什么
阿里云在全球各地部署高效节能的绿色数据中心,利用清洁计算为万物互联的新世界提供源源不断的能源动力,目前开服的区域包括中国(华北、华东、华南、香港)、新加坡、美国(美东、美西)、欧洲、中东、澳大利亚、日本。目前阿里云的产品涵盖弹性计算、数据库、存储与CDN、分析与搜索、云通信、网络、管理与监控、应用服务、互联网中间件、移动服务、视频服务等。通过本课程,来了解阿里云能够为你的业务带来哪些帮助     相关的阿里云产品:云服务器ECS 云服务器 ECS(Elastic Compute Service)是一种弹性可伸缩的计算服务,助您降低 IT 成本,提升运维效率,使您更专注于核心业务创新。产品详情: https://www.aliyun.com/product/ecs
相关文章
|
5天前
|
存储 缓存 关系型数据库
MySQL结构流程,看这一篇就够了!
MySQL结构流程,看这一篇就够了!
|
6天前
|
存储 关系型数据库 MySQL
学习MySQL(5.7)第二战:四大引擎、账号管理以及建库(干货满满)
学习MySQL(5.7)第二战:四大引擎、账号管理以及建库(干货满满)
|
7天前
|
存储 关系型数据库 MySQL
MySQL字段的字符类型该如何选择?千万数据下varchar和char性能竟然相差30%🚀
本篇文章来讨论MySQL字段的字符类型选择并深入实践char与varchar类型的区别以及在千万数据下的性能测试
MySQL字段的字符类型该如何选择?千万数据下varchar和char性能竟然相差30%🚀
|
13天前
|
关系型数据库 MySQL Linux
【MySQL-10】数据库函数-案例演示【字符串/数值/日期/流程控制函数】(代码演示&可cv代码)
【MySQL-10】数据库函数-案例演示【字符串/数值/日期/流程控制函数】(代码演示&可cv代码)
【MySQL-10】数据库函数-案例演示【字符串/数值/日期/流程控制函数】(代码演示&可cv代码)
|
15天前
|
SQL 监控 关系型数据库
【MySQL学习】MySQL的慢查询日志和错误日志
【MySQL学习】MySQL的慢查询日志和错误日志
|
15天前
|
存储 关系型数据库 MySQL
Mysql学习--深入探究索引和事务的重点要点与考点
Mysql学习--深入探究索引和事务的重点要点与考点
|
21天前
|
SQL 关系型数据库 MySQL
快速学习MySQL SQL语句
快速学习MySQL SQL语句
|
21天前
|
存储 SQL 关系型数据库
MySQL学习手册(第一部分)
mysql日常使用记录
83 0
|
4天前
|
关系型数据库 MySQL 数据库
docker MySQL删除数据库时的错误(errno: 39)
docker MySQL删除数据库时的错误(errno: 39)
13 0
|
2天前
|
关系型数据库 MySQL 数据库
mysql 设置环境变量与未设置环境变量连接数据库的区别
设置与未设置MySQL环境变量在连接数据库时主要区别在于命令输入方式和系统便捷性。设置环境变量后,可直接使用`mysql -u 用户名 -p`命令连接,而无需指定完整路径,提升便利性和灵活性。未设置时,需输入完整路径如`C:\Program Files\MySQL\...`,操作繁琐且易错。为提高效率和减少错误,推荐安装后设置环境变量。[查看视频讲解](https://www.bilibili.com/video/BV1vH4y137HC/)。
20 3
mysql 设置环境变量与未设置环境变量连接数据库的区别