查询学过编号为01,并且也学过过编号为02的课程的同学信息
时间: 2023-05-24 11:07:23 浏览: 204
这个问题需要查找同时选修了编号为01和02的课程的学生信息。假设有以下三个表:
**Student表**
| 学号 | 姓名 |
| ----- | ---- |
| 10001 | 张三 |
| 10002 | 李四 |
| 10003 | 王五 |
**Course表**
| 课程编号 | 课程名称 |
| -------- | -------- |
| 01 | 语文 |
| 02 | 数学 |
| 03 | 英语 |
| 04 | 物理 |
**Score表**
| 学号 | 课程编号 | 成绩 |
| ----- | -------- | ---- |
| 10001 | 01 | 90 |
| 10001 | 02 | 80 |
| 10001 | 03 | 70 |
| 10002 | 01 | 85 |
| 10002 | 02 | 90 |
| 10002 | 03 | 80 |
| 10003 | 01 | 70 |
| 10003 | 03 | 75 |
| 10003 | 04 | 60 |
根据这三个表可以使用如下SQL语句查询出同时选修了编号为01和02的课程的学生信息:
```
SELECT S.学号, S.姓名
FROM Student S
INNER JOIN Score SC1 ON S.学号 = SC1.学号 AND SC1.课程编号 = '01'
INNER JOIN Score SC2 ON S.学号 = SC2.学号 AND SC2.课程编号 = '02'
```
运行结果如下:
| 学号 | 姓名 |
| ----- | ---- |
| 10001 | 张三 |
| 10002 | 李四 |
阅读全文