利用T-SQL语句在JXGL数据库中实现其嵌套查询操作: (1)查询选修了“离散数学”的学生的学号和姓名。 (2)查询课程号为C2的课程的成绩高于张林的学生的学号和成绩。 (3)查询其他系中年龄小于计算机科学系(CS)中年龄最大者的学生。 (4)查询其他系中比计算机科学系(CS)的学生年龄都小的学生。 (5)查询和“王洪敏”的“数据库原理及应用”课程分数相同的学生的学号。 (6)查询没有选修C2课程的学生的姓名。
时间: 2023-06-10 08:08:56 浏览: 197
数据库的嵌套查询.
1. 查询选修了“离散数学”的学生的学号和姓名。
```sql
SELECT 学号, 姓名
FROM 学生表
WHERE 学号 IN (
SELECT 学号
FROM 选课表
WHERE 课程名称 = '离散数学'
);
```
2. 查询课程号为C2的课程的成绩高于张林的学生的学号和成绩。
```sql
SELECT 学号, 成绩
FROM 成绩表
WHERE 课程号 = 'C2' AND 成绩 > (
SELECT 成绩
FROM 成绩表
WHERE 学号 = '张林' AND 课程号 = 'C2'
);
```
3. 查询其他系中年龄小于计算机科学系(CS)中年龄最大者的学生。
```sql
SELECT *
FROM 学生表
WHERE 年龄 < (
SELECT MAX(年龄)
FROM 学生表
WHERE 系别 = '计算机科学系'
) AND 系别 <> '计算机科学系';
```
4. 查询其他系中比计算机科学系(CS)的学生年龄都小的学生。
```sql
SELECT *
FROM 学生表
WHERE 年龄 < (
SELECT MIN(年龄)
FROM 学生表
WHERE 系别 = '计算机科学系'
) AND 系别 <> '计算机科学系';
```
5. 查询和“王洪敏”的“数据库原理及应用”课程分数相同的学生的学号。
```sql
SELECT 学号
FROM 成绩表
WHERE 课程名称 = '数据库原理及应用' AND 成绩 = (
SELECT 成绩
FROM 成绩表
WHERE 学号 = '王洪敏' AND 课程名称 = '数据库原理及应用'
);
```
6. 查询没有选修C2课程的学生的姓名。
```sql
SELECT 姓名
FROM 学生表
WHERE 学号 NOT IN (
SELECT 学号
FROM 选课表
WHERE 课程号 = 'C2'
);
```
阅读全文