MySQL查询score表中至少有5明同学选修并以3开头的的课程的平均分数
时间: 2023-12-14 10:39:21 浏览: 73
查看学生各课程考试成绩平均分.sql
可以使用如下的SQL语句:
```
SELECT AVG(score) AS avg_score
FROM score
WHERE course_id LIKE '3%'
GROUP BY student_id
HAVING COUNT(DISTINCT course_id) >= 5;
```
解释一下这个SQL语句:
首先,我们筛选出以3开头的课程,使用`WHERE course_id LIKE '3%'`语句。
然后,按照`student_id`分组,使用`GROUP BY student_id`语句。
接着,我们使用`COUNT(DISTINCT course_id)`函数,统计每个学生选修的不同课程数量,并使用`HAVING`语句过滤出选修课程数目大于等于5的学生。
最后,使用`AVG(score)`函数计算每个符合条件的学生的平均分数。
阅读全文