数据库查询 - 选课系统
时间: 2024-12-28 21:13:56 浏览: 9
### 关于选课系统的数据库查询
在大学的学生选课系统中,高效的SQL查询对于获取所需信息至关重要。下面是一些常见的SQL查询示例,这些查询可以帮助管理员了解学生选课情况、成绩分析以及教师课程管理等方面的信息。
#### 学生选课情况查询
为了查看特定学生的选课详情,可以执行如下SQL语句:
```sql
SELECT s.student_id, s.name, c.course_name, sc.grade
FROM students s
JOIN student_courses sc ON s.student_id = sc.student_id
JOIN courses c ON sc.course_id = c.course_id
WHERE s.student_id = '指定学号';
```
此查询会返回给定学号的学生所选修的所有课程及其成绩[^1]。
#### 成绩统计与分析
如果想要获得某个班级的成绩分布状况,则可以通过以下方式实现:
```sql
SELECT AVG(sc.grade) AS avg_grade,
MIN(sc.grade) AS min_grade,
MAX(sc.grade) AS max_grade,
COUNT(*) AS total_students
FROM student_courses sc
JOIN classes cl ON sc.class_id = cl.class_id
WHERE cl.class_code = '具体班号';
```
这段代码能够计算并展示某班级内所有学生的平均分、最低分、最高分及总人数等统计数据。
#### 教师授课列表
当需要知道一位老师教授哪些科目时,可利用下列命令来完成这项工作:
```sql
SELECT t.teacher_name, c.course_name
FROM teachers t
JOIN teacher_courses tc ON t.teacher_id = tc.teacher_id
JOIN courses c ON tc.course_id = c.course_id
WHERE t.teacher_id = '教工编号';
```
上述脚本将列出由指定ID代表的教师负责讲授的所有课程名称。
阅读全文