首先统计各班级人数,学生表一条数据代表一个学生,
已经知道学生表有“管理院系,专业,班级名称,班级代码,年级,性别”等信息,
要统计的是在校学生,所以用where条件限定年级在2016~2019。
然后使用group by
指定学生班级,在count(*)
列就能统计出各班人数
SELECT 管理院系 AS 学院名, 专业 AS 专业名, 班级名称 AS 班级名, 班级代码 AS 班级编号 |
统计各班男女人数比较难,最开始准备用LEFT JOIN
。用学生表为基础,左连接算出男生人数的学生表,再左连接算出女生人数的学生表,
但是这样做有点麻烦,效率和准确性都不高,所以最后选择了sum函数计算出男女人数方法
SELECT 管理院系 AS 学院名, 专业 AS 专业名, 班级名称 AS 班级名, 班级代码 AS 班级编号 |
结果很准确