MySQL中常用函数的日常总结

本文涉及的产品
云数据库 RDS MySQL,集群系列 2核4GB
推荐场景:
搭建个人博客
RDS MySQL Serverless 基础系列,0.5-2RCU 50GB
RDS MySQL Serverless 高可用系列,价值2615元额度,1个月
简介: MySQL中常用函数的日常总结

前言


  很多朋友都学习过数据库相关的操作,SQL作为访问和处理数据库的标准计算机语言,也有很多的函数方便我们调用。近期针对SQL中的函数进行了一次总结,特分享给大家。


SQL函数


  SQL函数主要分为两大类,一类是基于计算的函数Aggregate函数,另一类是基于数据处理的Scalar函数。

  其中基于计算的Aggregate函数主要是针对数据库中值得计算主要包含:平均值函数、最大值最小值函数、计算总和、计算总行数等一类函数。基于Scalar函数的函数主要是针对数据进行处理,例如:转大写、转小写、数据长度、格式化数据、字符串截取等相关函数。下面根据实际例子进行介绍。

  本次将基于下表中信息进行函数的演示。


CREATE TABLE `goods` (
  `id` int(11) NOT NULL AUTO_INCREMENT,
  `goods_name` varchar(255) DEFAULT NULL COMMENT '商品名称',
  `price` decimal(10,2) DEFAULT NULL COMMENT '单价',
  `discount` decimal(10,2) DEFAULT NULL COMMENT '优惠',
  `freight` decimal(10,2) DEFAULT NULL COMMENT '运费',
  `goods_num` int(11) DEFAULT NULL COMMENT '商品数量',
  `class_type` varchar(100) DEFAULT NULL COMMENT '商品类型 文体用品 服饰',
  `create_time` datetime DEFAULT NULL COMMENT '创建时间',
  PRIMARY KEY (`id`)
) ENGINE=InnoDB AUTO_INCREMENT=9 DEFAULT CHARSET=utf8mb4 COMMENT='商品信息表';


测试数据截图如下:


image.png


Aggregate函数


MAX()


MAX() 函数的作用MAX()函数返回满足条件的列中的最大值,其中null是不参与计算的。

MAX() 函数的语法SELECT MAX(列名称) FROM 表名 WHERE 查询条件;

MAX() 函数的示例查询商品表中分类为“文体用品”的最高价格是多少。查询SQL如下:


SELECT MAX(price) FROM goods WHERE class_type="文体用品";


MAX() 函数的执行结果查询商品表中分类为“文体用品”的最高价格是10元钱。


image.png


MIN()


MIN()函数的作用MIN()函数返回满足条件的列中的最小值,其中null是不参与计算的。

MIN()函数的语法SELECT MIN(列名称) FROM 表名 WHERE 查询条件;

MIN()函数的示例查询商品表中分类为“服饰”的最低价格是多少。查询SQL如下:

SELECT MIN(price) FROM goods WHERE class_type="服饰";


MIN()函数的执行结果查询商品表中分类为“服饰”的最低价格是30元。


image.png


SUM()


SUM()函数的作用SUM()函数主要作用是计算指定列的总和。

SUM()函数的语法SELECT SUM(列名称) FROM 表名 WHERE 查询条件;

SUM()函数的示例计算商品表中所有商品的单价总和是多少; 计算商品表中分类为“文体用品”的商品总价值。SQL如下:

-- 计算商品表中所有商品的单价总和是
SELECT SUM(price) FROM goods;
-- 计算商品表中分类为“文体用品”的商品总价值
SELECT SUM(price*goods_num) FROM goods WHERE class_type="文体用品";


SUM()函数的执行结果计算商品表中所有商品的单价总和是323元


image.png


计算商品表中分类为“文体用品”的商品总价值225.00元。


image.png


AVG()


AVG()函数的作用AVG()函数的作用是返回满足条件的指定列的平均值。

AVG()函数的语法SELECT AVG(列名称) FROM 表名 WHERE 查询条件;

AVG()函数的示例查询商品表中类目为“文体用品”的商品售价平均值。

SELECT AVG(price) FROM goods WHERE class_type="文体用品";


AVG()函数的执行结果查询商品表中类目为“文体用品”的商品售价平均值为4.5元。


image.png


COUNT()


COUNT()函数的作用COUNT()函数是查询满足条件的总行数。

COUNT()函数的语法SELECT COUNT(*) FROM 表名 WHERE 查询条件;

COUNT()函数的示例查询商品表中所有在销售的商品种类数量。


SELECT COUNT(*) FROM goods;


COUNT()函数的执行结果查询商品表中所有在销售的商品种类数量是8件。


image.png


FIRST()


FIRST()函数的作用FIRST() 函数返回指定的字段中第一个记录的值。

FIRST()函数的语法SELECT FIRST(*) FROM 表名 WHERE 查询条件 ORDER BY 列名;

FIRST()函数的示例


SELECT FIRST(price) FROM goods WHERE class_type="服饰" ORDER BY id DESC;


LAST()


LAST()函数的作用LAST() 函数返回指定的字段中最后一个记录的值。

LAST()函数的语法SELECT LAST(*) FROM 表名 WHERE 查询条件 ORDER BY 列名;

LAST()函数的示例


SELECT LAST(price) FROM goods WHERE class_type="服饰" ORDER BY id DESC;


Scalar 函数


UCASE()


UCASE()函数的作用UCASE()函数作用是将满足条件的指定列的值转为大写。

UCASE()函数的语法SELECT UCASE(列名) FROM 表名 WHERE 条件;

UCASE()函数的示例将商品表中类目为“文体用品”的商品名称转为大写


SELECT UCASE(goods_name) FROM goods WHERE class_type="文体用品";


UCASE()函数的执行结果将商品表中类目为“文体用品”的商品名称转为大写执行结果

如下:


image.png


LCASE()


LCASE()函数的作用LCASE()函数作用是将满足条件的指定列的值转为小写。

LCASE()函数的语法SELECT LCASE(列名) FROM 表名 WHERE 条件;

LCASE()函数的示例将商品表中类目为“文体用品”的商品名称转为小写


SELECT LCASE(goods_name) FROM goods WHERE class_type="文体用品";


LCASE()函数的执行结果将商品表中类目为“文体用品”的商品名称转为小写,执行结果如下:


image.png


LENGTH()


LENGTH()函数的作用LENGTH()函数作用是输出满足条件的指定列的值的长度大小。需要注意的是有的数据库使用的函数是LEN()。

LENGTH()函数的语法SELECT LENGTH(列名) FROM 表名 WHERE 条件;

LENGTH()函数的示例将商品表中类目为“文体用品”的商品名称和商品名称值得长度查询出。


SELECT goods_name,LENGTH(goods_name) FROM goods WHERE class_type="文体用品";


LENGTH()函数的执行结果将商品表中类目为“文体用品”的商品名称和商品名称值得长度查询结果如下:


image.png


ROUND()


ROUND()函数的作用ROUND()的主要作用是对满足条件的某个数值字段进行指定小数位数的四舍五入

ROUND()函数的语法SELECT ROUND(列名,小数位数) FROM 表名 WHERE 条件;

ROUND()函数的示例将商品表中类目为“服饰”的商品名称和价格查询出来,并将价格保留三位小数。


SELECT goods_name,ROUND(price,3) FROM goods WHERE class_type="服饰";


ROUND()函数的执行结果将商品表中类目为“服饰”的商品名称和价格查询出来,并将价格保留三位小数。执行结果如下:


image.png


FORMAT()


FORMAT()函数的作用FORMAT()函数主要作用是对满足条件的指定列进行格式化显示。

FORMAT()函数的语法SELECT FORMAT(列名,格式) FROM 表名 WHERE 条件;

FORMAT()函数的示例使用DATE_FORMAT对商品表中的创建时间格式化显示为年-月-日的形式。


SELECT goods_name,price,DATE_FORMAT(create_time,'%Y-%c-%d') FROM goods


FORMAT()函数的执行结果使用DATE_FORMAT对商品表中的创建时间格式化显示为年-月-日的形式。结果如下:


image.png


NOW()


NOW()函数的作用NOW()函数的作用是返回当前系统的时间

NOW()函数的语法SELECT NOW();

NOW()函数的示例获取当时数据库的时间。


SELECT NOW();


NOW()函数的执行结果


image.png

SUBSTR()


SUBSTR()函数的作用SUBSTR()函数是将满足添加的指定列的数据按一定规则截取显示,部分数据库使用的是MID() 函数。

SUBSTR()函数的语法SELECT SUBSTR(列名,起始位置默认为1,返回的字符数可以为空) FROM 表名 WHERE 条件;

SUBSTR()函数的示例将商品表中类目为“文体用品”的商品名保留前两个字符输出显示。


SELECT goods_name,SUBSTR(goods_name,1,2) FROM goods WHERE class_type="文体用品";


SUBSTR()函数的执行结果将商品表中类目为“文体用品”的商品名保留前两个字符输出显示结果如下:


image.png


结语


  好了,以上就是MySQL中常用函数的日常总结


相关实践学习
如何在云端创建MySQL数据库
开始实验后,系统会自动创建一台自建MySQL的 源数据库 ECS 实例和一台 目标数据库 RDS。
全面了解阿里云能为你做什么
阿里云在全球各地部署高效节能的绿色数据中心,利用清洁计算为万物互联的新世界提供源源不断的能源动力,目前开服的区域包括中国(华北、华东、华南、香港)、新加坡、美国(美东、美西)、欧洲、中东、澳大利亚、日本。目前阿里云的产品涵盖弹性计算、数据库、存储与CDN、分析与搜索、云通信、网络、管理与监控、应用服务、互联网中间件、移动服务、视频服务等。通过本课程,来了解阿里云能够为你的业务带来哪些帮助     相关的阿里云产品:云服务器ECS 云服务器 ECS(Elastic Compute Service)是一种弹性可伸缩的计算服务,助您降低 IT 成本,提升运维效率,使您更专注于核心业务创新。产品详情: https://www.aliyun.com/product/ecs
目录
相关文章
|
1月前
|
JSON 关系型数据库 MySQL
Mysql(5)—函数
MySQL提供了许多内置的函数以帮助用户进行数据操作和分析。这些函数可以分为几类,包括聚合函数、字符串函数、数值函数、日期和时间函数、控制流函数等。
70 1
Mysql(5)—函数
|
14天前
|
关系型数据库 MySQL Serverless
MySQL函数
最常用的MySQL函数,包括聚合函数,字符串函数,日期时间函数,控制流函数等
|
18天前
|
SQL NoSQL 关系型数据库
|
1月前
|
存储 SQL 关系型数据库
MySQL 存储函数及调用
MySQL 存储函数及调用
58 3
|
1月前
|
缓存 关系型数据库 MySQL
MySQL 满足条件函数中使用查询最大值函数
MySQL 满足条件函数中使用查询最大值函数
120 1
|
2月前
|
存储 SQL 关系型数据库
MySQL基础:函数
本文介绍了MySQL中几种常用的内建函数,包括字符串函数、数值函数、日期函数和流程函数。字符串函数如`CONCAT()`用于拼接字符串,`TRIM()`用于去除字符串两端的空格,`MOD()`求余数,`RAND()`生成随机数,`ROUND()`四舍五入。日期函数如`CURDATE()`返回当前日期,`NOW()`返回当前日期和时间,`DATE_ADD()`添加时间间隔,`DATEDIFF()`计算日期差。流程函数如`IF()`和`CASE WHEN THEN ELSE END`用于条件判断。聚合函数如`COUNT()`统计行数,`SUM()`求和,`AVG()`求平均值
29 8
MySQL基础:函数
|
29天前
|
关系型数据库 MySQL 数据库
mysql中tonumber函数使用要注意什么
在处理这类转换操作时,考虑周全,利用提供的高性能云服务器资源,可以进一步提升数据库处理效率,确保数据操作的稳定性和安全性,尤其是在处理大量数据转换和运算密集型应用时。
86 0
|
1月前
|
关系型数据库 MySQL 数据处理
企业级应用 mysql 日期函数变量,干货已整理
本文详细介绍了如何在MySQL8.0中使用DATE_FORMAT函数进行日期格式的转换,包括当日、昨日及不同时间段的数据获取,并提供了实际的ETL应用场景和注意事项,有助于提升数据处理的灵活性和一致性。
41 0
|
2月前
|
JSON 关系型数据库 MySQL
MySQL 8.0常用函数汇总与应用实例
这些函数只是MySQL 8.0提供的众多强大功能的一部分。通过结合使用这些函数,你可以有效地处理各种数据,优化数据库查询,并提高应用程序的性能和效率。
61 3
|
3月前
|
SQL 关系型数据库 MySQL
在 MySQL 中使用 `RIGHT` 函数
【8月更文挑战第8天】
353 7
在 MySQL 中使用 `RIGHT` 函数