MySQL查询选修了’高等数学’课程的总人数和平均成绩;
时间: 2023-06-26 08:10:36 浏览: 248
假设该数据存在两张表中,一张表是学生信息表(student),包含学生的学号、姓名等信息;另一张表是选课信息表(course),包含学生选修的课程信息,包括学生的学号、课程名称、成绩等信息。
我们可以使用如下的 SQL 语句来查询选修了“高等数学”课程的总人数和平均成绩:
```
SELECT COUNT(DISTINCT student.student_id) AS total_num, AVG(course.score) AS average_score
FROM student, course
WHERE student.student_id = course.student_id AND course.course_name = '高等数学';
```
这条 SQL 语句使用了 JOIN 操作将学生信息表和选课信息表连接起来,然后使用 WHERE 子句筛选出选修了“高等数学”课程的学生,最后使用 COUNT 和 AVG 函数计算总人数和平均成绩。
相关问题
mysql查询选修了课程的学生人数
假设选修课程的表名为 `course`,学生信息表为 `student`,选修课程的学生信息表为 `course_student`,其中 `course_student` 表中包含了选修课程的学生的学号和课程号。
可以使用如下 SQL 语句查询选修了某门课程的学生人数:
```sql
SELECT COUNT(DISTINCT s.student_id) AS student_num
FROM course_student cs
JOIN student s ON cs.student_id = s.student_id
WHERE cs.course_id = 'your_course_id';
```
其中 `your_course_id` 是要查询的课程的课程号。该 SQL 语句会返回一个名为 `student_num` 的列,其中包含了选修该门课程的学生人数。
MySQL查询选修课程的人数
假设我们有以下两张表:
学生表 (students):
| 学号 | 姓名 |
| ---- | -----|
| 1 | 张三 |
| 2 | 李四 |
| 3 | 王五 |
| 4 | 赵六 |
选课表 (course_selections):
| 学号 | 课程编号 |
| ---- | -----|
| 1 | 1001 |
| 1 | 1002 |
| 2 | 1001 |
| 3 | 1003 |
则查询选修课程的人数的SQL语句如下:
```
SELECT 课程编号, COUNT(*) AS 选课人数
FROM 选课表
GROUP BY 课程编号;
```
该语句使用了 COUNT 函数统计每个课程编号在选课表中出现的次数,即为选修该课程的人数。同时使用了 GROUP BY 语句将结果按照课程编号进行分组,最终查询结果包括课程编号和选课人数两个字段。