MySQL 保姆级教程(十):汇总数据

第 12 章 汇总数据

12.1 聚集函数

运行在行组上,计算和返回单个值的函数
​
函 数         说 明
AVG()         返回某列的平均值
COUNT()       返回某列的行数
MAX()        返回某列的最大值
MIN()        返回某列的最小值
SUM()        返回某列值之和

12.1.1 AVG() 函数

输入: SELECT AVG(cust_zip) FROM customers;
输出: 
+---------------+
| AVG(cust_zip) |
+---------------+
|       54686.4 |
+---------------+
​
注意: AVG() 函数忽略列值为 NULL 的行

12.1.2 COUNT() 函数

输入: SELECT COUNT(*) FROM customers;
输出: 
+----------+
| COUNT(*) |
+----------+
|        5 |
+----------+
分析: COUNT(*) 对表中行的数目进行计数,不管表列中的是空值还是非空值
​
输入: SELECT COUNT(cust_email) FROM customers;
输出: 
+-------------------+
| COUNT(cust_email) |
+-------------------+
|                 3 |
+-------------------+
分析: 只对有值的进行计算

12.1.3 MAX() 函数

输入: SELECT MAX(cust_zip) FROM customers;
输出: 
+---------------+
| MAX(cust_zip) |
+---------------+
| 88888         |
+---------------+
分析: MAX() 忽略列值为 NULL 的行

12.1.4 MIN() 函数

输入: SELECT MIN(cust_zip) FROM customers;
输出: 
+---------------+
| MIN(cust_zip) |
+---------------+
| 42222         |
+---------------+
分析: MIN() 忽略列值为 NULL 的行

12.1.5 SUM() 函数

输入: SELECT SUM(cust_zip) FROM customers;
输出: 
+---------------+
| SUM(cust_zip) |
+---------------+
|        273432 |
+---------------+
分析: SUM() 忽略列值为 NULL 的行

12.2 聚集不同值

输入: SELECT AVG(stat_value) FROM innodb_index_stats;
输出: 
+-----------------+
| AVG(stat_value) |
+-----------------+
|          1.4571 |
+-----------------+

输入: SELECT AVG(DISTINCT stat_value) FROM innodb_index_stats;
输出: 
+--------------------------+
| AVG(DISTINCT stat_value) |
+--------------------------+
|                   3.2000 |
+--------------------------+
分析: DISTINCT 排除了重复值

12.3 组合聚集函数

输入: SELECT COUNT(*),AVG(stat_value),MIN(stat_value),MAX(stat_value) FROM innodb_index_stats;
输出: 
+----------+-----------------+-----------------+-----------------+
| COUNT(*) | AVG(stat_value) | MIN(stat_value) | MAX(stat_value) |
+----------+-----------------+-----------------+-----------------+
|       35 |          1.4571 |               0 |               6 |
+----------+-----------------+-----------------+-----------------+

评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

Suc2es2

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值