利用MySQL命令行窗口在数据库studentms中的3个表:学生表student、课程表course和成绩表score中进行分组聚合查找有关信息。 实验步骤 1. 查询各科成绩的最高分、最低分及平均分。 2. 统计各系的人数。 3. 统计系的人数大于2的系名及人数。 4. 在成绩表中统计参加过考试的人数。
时间: 2024-02-21 12:59:58 浏览: 102
MySql 学生表 科目表 成绩表 查询学生各科成绩-附件资源
好的,根据您的要求,我会根据您提供的信息进行回答,以下是每个问题的解答:
1. 查询各科成绩的最高分、最低分及平均分。
可以使用以下 SQL 语句实现:
```
SELECT course_name, MAX(score) AS max_score, MIN(score) AS min_score, AVG(score) AS avg_score
FROM score
LEFT JOIN course ON score.course_id = course.course_id
GROUP BY course_name;
```
2. 统计各系的人数。
可以使用以下 SQL 语句实现:
```
SELECT department, COUNT(*) AS student_count
FROM student
GROUP BY department;
```
3. 统计系的人数大于2的系名及人数。
可以使用以下 SQL 语句实现:
```
SELECT department, COUNT(*) AS student_count
FROM student
GROUP BY department
HAVING COUNT(*) > 2;
```
4. 在成绩表中统计参加过考试的人数。
可以使用以下 SQL 语句实现:
```
SELECT COUNT(DISTINCT student_id) AS student_count
FROM score;
```
希望以上解答能够帮助您完成您的任务。
阅读全文