查询每位同学的选课门数、总成绩、平均成绩
时间: 2023-08-03 08:07:41 浏览: 563
您可以使用以下 SQL 命令查询每位同学的选课门数、总成绩和平均成绩:
```sql
SELECT 学生表.学号, 学生表.姓名, COUNT(*) AS 选课门数, SUM(成绩表.成绩) AS 总成绩, AVG(成绩表.成绩) AS 平均成绩
FROM 学生表, 成绩表
WHERE 学生表.学号 = 成绩表.学号
GROUP BY 学生表.学号, 学生表.姓名;
```
这将返回每位同学的选课门数、总成绩和平均成绩信息。使用 `COUNT(*)` 函数统计每个学生选修课程的门数,使用 `SUM(成绩表.成绩)` 函数计算每个学生的总成绩,使用 `AVG(成绩表.成绩)` 函数计算每个学生的平均成绩。同时,使用 `GROUP BY` 子句将结果按照学号和姓名进行分组,以方便查看每个学生的信息。
相关问题
查询所有同学的学号、姓名、选课门数、平均成绩。
你可以使用下面这条 SQL 语句来查询所有同学的学号、姓名、选课门数、平均成绩:
```
SELECT s.id, s.name, COUNT(sc.course_id) AS num_courses, AVG(sc.score) AS avg_score
FROM students s
LEFT JOIN score sc ON s.id = sc.student_id
GROUP BY s.id, s.name;
```
这条语句中,我们使用了 `LEFT JOIN` 来连接学生表和成绩表,使用 `COUNT` 函数来计算每个学生选了多少门课程,使用 `AVG` 函数来计算每个学生的平均成绩,最后使用 `GROUP BY` 子句来按照学号和姓名分组。
统计每个学生的选课门数和考试总成绩,MySQL
假设有两个表,一个是学生表(student),包含学生的学号(id)和姓名(name);另一个是选课表(course),包含选课信息,包括学号(id)、课程名称(name)和考试成绩(score)。
可以使用如下 SQL 语句来统计每个学生的选课门数和考试总成绩:
```
SELECT student.id, student.name, COUNT(course.id) AS num_courses, SUM(course.score) AS total_score
FROM student LEFT JOIN course ON student.id = course.id
GROUP BY student.id, student.name
```
这里使用了 LEFT JOIN 进行学生表和选课表的关联,以保证即使某个学生没有选课,也能出现在结果中。然后使用 COUNT 函数统计选课门数,使用 SUM 函数统计考试总成绩。最后使用 GROUP BY 子句按照学生的 id 和 name 进行分组,得到每个学生的选课门数和考试总成绩。