使用 MySQL 聚合函数进行学生信息与课程信息的统计分析

本文将使用 MySQL 聚合函数进行学生信息与课程信息的统计分析,涵盖最大年龄、最小年龄、平均年龄、总人数、总学分等常见指标。

数据表结构

student 表

CREATE TABLE student (
  stu_id BIGINT(11) PRIMARY KEY,
  stu_name VARCHAR(12) NOT NULL,
  stu_sex ENUM('男', '女'),
  stu_age INT(1),
  stu_major VARCHAR(9),
  stu_college VARCHAR(12)
);

course 表

CREATE TABLE course (
  cs_id INT(11) PRIMARY KEY,
  cs_name VARCHAR(50) NOT NULL,
  cs_credit DOUBLE(2,1),
  cs_type VARCHAR(12),
  cs_depart VARCHAR(6)
);

数据填充

INSERT INTO student (stu_id, stu_name, stu_sex, stu_age, stu_major, stu_college) VALUES
(201804550101, '郭奎', '男', 22, '计科', '信工学院'),
(201804550102, '吕宇航', '男', 18, '计科', '信工学院'),
(201804550103, '张豪辉', '女', 19, '计科', '信工学院'),
(201804550107, '丁志杰', '男', 17, '金融学', '金贸学院'),
(201804550109, '范伟', '男', 19, '金融学', '金贸学院'),
(201804550116, '张依婷', '女', 17, '大数据', '信工学院'),
(201804550120, '张维', '男', 19, '计科', '信工学院'),
(201804550121, '朱柳阳', '女', 20, '计科', '信工学院'),
(201804550144, '谭兵炎', '男', 20, '大数据', '信工学院'),
(201804550153, '杨志强', '男', 17, '大数据', '信工学院');

INSERT INTO course (cs_id, cs_name, cs_credit, cs_type, cs_depart) VALUES
(5200313, '数据库原理及应用', 4, '核心专业', '信工'),
(5203314, '计算机导论', 4, '通识教育', '信工'),
(5219314, '数据结构', 5, '专业核心', '信工'),
(5223013, '大学物理', 4, '专业基础', '信工'),
(5227614, '毕业实习', 4, '集中实践', '信工'),
(5230912, '云计算', 2, '共同选修', '信工'),
(5236212, '机器学习', 2, '共同选修', '信工'),
(5237514, 'c语言', 4, '专业基础', '信工'),
(5245112, '区块链', 2, '任意选修', '信工'),
(7200422, '知识产权法', 2, '任意选修', '文法'),
(20201833, '概率论', 3, '专业基础', '基础'),
(20202336, '高等数学', 6, '专业基础', '基础'),
(29299131, '劳动教育', 1, '集中实践', '学务');

聚合函数示例

  1. 聚合函数 max 查询学生年最大的年龄
SELECT MAX(stu_age) AS max_age FROM student;
  1. 聚合函数 min 查询学生年最小的年龄
SELECT MIN(stu_age) AS min_age FROM student;
  1. 聚合函数 avg 查询学生年龄的平均值
SELECT AVG(stu_age) AS avg_age FROM student;
  1. 聚合函数 count 统计学生表中的记录数,即有多少人
SELECT COUNT(*) AS total_students FROM student;
  1. 聚合函数 sum 查询所有课程的总学分
SELECT SUM(cs_credit) AS total_credits FROM course;
  1. 查询信工学院中最大和最小年龄
SELECT MAX(stu_age) AS max_age, MIN(stu_age) AS min_age FROM student WHERE stu_college = '信工学院';
  1. 统计信工学院中的人数
SELECT COUNT(*) AS total_students FROM student WHERE stu_college = '信工学院';
  1. 查询信工学院中学生的平均年龄
SELECT AVG(stu_age) AS avg_age FROM student WHERE stu_college = '信工学院';
  1. 查询信工学院的总学分、平均学分、最大学分和最小学分
SELECT SUM(cs_credit) AS total_credits, AVG(cs_credit) AS avg_credit, MAX(cs_credit) AS max_credit, MIN(cs_credit) AS min_credit FROM course WHERE cs_depart = '信工';

通过以上示例,您可以了解到如何使用 MySQL 聚合函数进行数据的统计分析。 您可以根据实际需求,组合使用不同的聚合函数和条件语句,以获取更详细的数据分析结果。

MySQL 聚合函数实战:学生信息与课程信息统计分析

原文地址: https://www.cveoy.top/t/topic/xcj 著作权归作者所有。请勿转载和采集!

免费AI点我,无需注册和登录