SQL查询:至少2名学生选修的课程信息
SQL查询:至少2名学生选修的课程信息
本篇介绍如何使用SQL语句查询成绩表中至少有2名学生选修的课程信息,包括课程号、平均分数和选课人数。
SQL语句:
SELECT course_no, AVG(score), COUNT(DISTINCT stu_id)
FROM score
GROUP BY course_no
HAVING COUNT(DISTINCT stu_id) >= 2;
解释:
SELECT course_no, AVG(score), COUNT(DISTINCT stu_id): 选择课程号、平均分数和选课人数。FROM score: 从成绩表中获取数据。GROUP BY course_no: 按课程号进行分组。HAVING COUNT(DISTINCT stu_id) >= 2: 筛选出至少有两名学生选修的课程。
注意:
DISTINCT stu_id用于计算不同的学生数量。HAVING用于过滤分组后的结果。
示例:
假设成绩表 score 包含以下数据:
| stu_id | course_no | score | |---|---|---| | 1 | C1 | 85 | | 2 | C1 | 90 | | 3 | C2 | 75 | | 4 | C2 | 80 | | 5 | C3 | 95 |
执行上述SQL语句后,将得到以下结果:
| course_no | AVG(score) | COUNT(DISTINCT stu_id) | |---|---|---| | C1 | 87.5 | 2 | | C2 | 77.5 | 2 |
结论:
本SQL语句查询出课程号为'C1'和'C2'的课程信息,因为它们分别有2名学生选修。
原文地址: https://www.cveoy.top/t/topic/mlco 著作权归作者所有。请勿转载和采集!