- 本篇应用的数据表与以下连接的数据表相同:https://blog.csdn.net/weixin_44646187/article/details/114989048
函数名称 | 描述 |
---|---|
count() | 计数 |
sum() | 求和 |
avg() | 平均值 |
max() | 最大值 |
min() | 最小值 |
… | … |
SELECT r.sub_name,AVG(score),MAX(score),MIN(score)
FROM result r
INNER JOIN `subject` sub
ON r.sub_id = sub.sub_id
此时未对查询结果进行分组,所以平均分是所有科目相加后的平均分,最高分是所有科目中的最高分,最低分是所有科目中的最低分
SELECT r.sub_name,AVG(score),MAX(score),MIN(score)
FROM result r
INNER JOIN `subject` sub
ON r.sub_id = sub.sub_id
GROUP BY sub.sub_id
对查询结果进行分组后,显示的是每一科的平均分和最值
SELECT r.sub_name,AVG(score) AS 平均分,MAX(score),MIN(score)
FROM result r
INNER JOIN `subject` sub
ON r.sub_id = sub.sub_id
GROUP BY sub.sub_id
HAVING 平均分 > 87 --在进行聚合查询后,如果还有需要满足的子条件,不能用where关键字,要用having