MySQL查询所有同学的学号、姓名、选课数、总成绩
时间: 2023-09-16 22:10:20 浏览: 397
可以使用以下SQL语句查询所有同学的学号、姓名、选课数、总成绩:
```
SELECT student.id, student.name, COUNT(score.course_id) AS course_num, SUM(score.score) AS total_score
FROM student LEFT JOIN score ON student.id = score.student_id
GROUP BY student.id, student.name;
```
上述SQL语句中,使用了LEFT JOIN将学生表(student)和成绩表(score)连接起来,以便查询学生的选课数和总成绩。使用COUNT和SUM函数对选课数和总成绩进行统计,并使用GROUP BY对每个学生进行分组。
相关问题
mysql查询所有同学的学生编号、学生姓名、选课总数、所有课程的总成绩
可以使用如下的 SQL 语句来查询所有同学的学生编号、学生姓名、选课总数、所有课程的总成绩:
```
SELECT
s.id AS student_id,
s.name AS student_name,
COUNT(sc.course_id) AS course_count,
SUM(c.score) AS total_score
FROM
student s
LEFT JOIN score sc ON s.id = sc.student_id
LEFT JOIN course c ON sc.course_id = c.id
GROUP BY
s.id, s.name;
```
其中,`student` 表存储了学生的信息,包括学生编号和学生姓名;`score` 表存储了学生选课的信息,包括学生编号和课程编号;`course` 表存储了课程的信息,包括课程编号和课程成绩。这里使用了左连接(LEFT JOIN)来保证即使学生没有选课,也能够被查询到。最后使用 GROUP BY 对学生进行分组,计算每个学生选课总数和所有课程的总成绩。
mysql查询所有学生学号和姓名
可以使用如下的 SQL 语句查询所有学生的学号和姓名:
```
SELECT id, name FROM students;
```
其中 `students` 是你的学生信息表的表名,`id` 和 `name` 分别是你的学生信息表中对应的学号和姓名字段名。执行该 SQL 语句后,你将会得到一个包含所有学生学号和姓名的结果集。