查询同时选修课程号为81001和81002的学生的学号和姓名MySQL代码
时间: 2024-10-28 16:15:12 浏览: 45
北京邮电大学 BUPT 数据库课程 实验一 查询代码 数据库语言MySQL
在MySQL中,你可以使用JOIN操作和WHERE子句来查询同时选修课程号为81001和81002的学生的学号和姓名。假设你有两个表,一个是`students`(包含学生信息,如`s_id`表示学号,`name`表示姓名)另一个是`courses`(包含课程信息,比如`c_id`表示课程ID,`student_id`表示选课学生的学号)。以下是相应的SQL查询代码:
```sql
SELECT s.s_id, s.name
FROM students s
JOIN (
SELECT student_id
FROM courses
WHERE c_id IN (81001, 81002)
GROUP BY student_id
HAVING COUNT(DISTINCT c_id) = 2
) selected_courses ON s.s_id = selected_courses.student_id;
```
这个查询首先从`courses`表中找出选了课程81001和81002的学生ID列表,然后通过JOIN将这些学生ID关联到`students`表中,获取他们的学号和姓名。
阅读全文