帮我写一段检索多于2名学生选修的课程号及平均成绩的mysql代码
时间: 2024-03-11 11:43:39 浏览: 69
假设你的学生选课信息保存在一个名为 score 的表中,包含以下字段:
- course_id:课程编号
- student_id:学生学号
- score:成绩
那么可以使用如下 MySQL 代码来检索多于2名学生选修的课程号及平均成绩:
```
SELECT course_id, AVG(score) as avg_score
FROM score
GROUP BY course_id
HAVING COUNT(DISTINCT student_id) > 2;
```
该代码中,GROUP BY course_id 用于按课程编号分组,AVG(score) 计算每门课程的平均成绩。HAVING COUNT(DISTINCT student_id) > 2 表示选修该门课程的学生数目大于2人。
相关问题
帮我写一段检索选修3门以上课程的学生的学号、总成绩的mysql代码
假设你的选修课程信息保存在一个名为 course 的表中,包含以下字段:
- student_id:学生学号
- course_name:课程名称
- score:成绩
那么可以使用如下MySQL代码来检索选修3门以上课程的学生的学号、总成绩:
```
SELECT student_id, SUM(score) as total_score
FROM course
GROUP BY student_id
HAVING COUNT(DISTINCT course_name) >= 3;
```
该代码中,GROUP BY student_id 用于按学生学号分组,SUM(score) 计算每个学生的总成绩。HAVING COUNT(DISTINCT course_name) >= 3 表示选修3门以上课程的学生,其中 COUNT(DISTINCT course_name) 表示每个学生选修的不同课程数目。
阅读全文