MySQL——聚合函数及分组过滤

聚合函数(常用)

|----------|--------|
| 函数名称 | 描述 |
| COUNT() | 计数 |
| SUM() | 求和 |
| AVG() | 平均值 |
| MAX() | 最大值 |
| MIN() | 最小值 |
| ... | ... |

sql 复制代码
-- 都能够统计表中的数据(查询表中有多少个记录)
SELECT COUNT(studentname) FROM student  -- COUNT(字段),会忽略所有的NULL值 
SELECT COUNT(*) FROM student  -- COUNT(*) ,不会忽略NULL值,本质是计算行数
SELECT COUNT(1) FROM result  -- COUNT(1),不会忽略NULL值

SELECT sum(studentresult) AS 总和 FROM result
SELECT avg(studentresult) AS 平均分 FROM result
SELECT max(studentresult) AS 最高分 FROM result
SELECT min(studentresult) AS 最低分 FROM result

分组和过滤

sql 复制代码
-- 查询不同科目的平均分,最高分和最低分,平均分大于80
-- 核心:(根据不同的课程分组)
SELECT subjectname,AVG(studentresult) AS 平均分,MAX(studentresult) AS 最高分,MIN(studentresult) AS 最低分
FROM result r
INNER JOIN `subject` sub
ON r.`subjectno` = sub.`subjectno`
GROUP BY r.`subjectno`  -- 通过什么字段来分组
HAVING 平均分>80
相关推荐
云和恩墨4 小时前
MySQL和PostgreSQL谁更适合AI时代?
数据库
数据猿4 小时前
【金猿人物展】涛思数据创始人、CEO陶建辉:实现AI时代时序数据库向“数据平台”的转型
大数据·数据库·人工智能·时序数据库·涛思数据
当代红领巾4 小时前
Oracle 表空间扩容
数据库·oracle
小光学长4 小时前
基于ssm的美妆产品推荐系统rah0h134(程序+源码+数据库+调试部署+开发环境)带论文文档1万字以上,文末可获取,系统界面在最后面。
java·数据库·spring
_果果然4 小时前
数据库、表、字段:理解MySQL的三层结构
数据库·mysql
Leon-Ning Liu4 小时前
Oracle 19c RAC ASM 密码文件恢复方方案二:基于密码文件备份还原
数据库·oracle
间彧4 小时前
TiDB详解与应用实战:分布式数据库的核心原理与最佳实践
数据库
半夏知半秋4 小时前
Elasticsearch Query DSL 指令整理
大数据·数据库·笔记·学习·elasticsearch·搜索引擎·全文检索
元气满满-樱5 小时前
SQL语句***重点
数据库·sql
doris6105 小时前
设备点检、保养、维修一站式解决方案
大数据·数据库·人工智能