Java学习-MySQL-聚合函数和分组过滤

本文介绍了在MySQL中使用聚合函数如COUNT(),SUM(),AVG(),MAX(),MIN()进行数据统计,并展示了如何通过SELECT语句结合GROUPBY进行分组查询以及使用HAVING进行过滤,以获取各科的平均分、最高分和最低分等信息。
摘要由CSDN通过智能技术生成

Java学习-MySQL-MySQL函数-聚合函数和分组过滤

函数名称描述
conut()计数
sum()求和
avg()平均值
max()最大值
min()最小值

聚合函数

SELECT * FROM student

在这里插入图片描述

SELECT COUNT(`address`)FROM `student` -- → 19

在这里插入图片描述

SELECT COUNT(*)FROM `student` -- → 21
SELECT COUNT(1)FROM `student` -- → 21
select()中字段名、*和1的区别

字段名:忽略所有null值
*和1:不会忽略null值,本质是计算行数

分组和过滤

查询所有考试的平均分、最高分、最低分
SELECT AVG(`studentresult`)AS 平均分,
MAX(`studentresult`)AS 最高分,
MIN(`studentresult`)AS 最低分
FROM result

在这里插入图片描述

查询各科平均分、最高分、最低分
SELECT `subjectname`,
AVG(`studentresult`)AS 平均分,
MAX(`studentresult`)AS 最高分,
MIN(`studentresult`)AS 最低分
FROM `result` r
INNER JOIN `subject` s
WHERE r.`subjectno`=s.`subjectno`
GROUP BY r.`subjectno`

在这里插入图片描述

查询各科平均分、最高分、最低分,过滤出平均分大于80分的学科
SELECT `subjectname`,
AVG(`studentresult`)AS 平均分,
MAX(`studentresult`)AS 最高分,
MIN(`studentresult`)AS 最低分
FROM `result` r
INNER JOIN `subject` s
WHERE r.`subjectno`=s.`subjectno`
GROUP BY r.`subjectno`
HAVING 平均分>80

在这里插入图片描述

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值