学生表S和学生选课表SC两个数据库表,它们的结构如下: S(学号,姓名,性别,年龄),其中学号、姓名和性别为C型字段,年龄为N型字段; SC(学号,课程号,成绩),其中学号和课程号为C型字段,成绩为N型字段。 查询同时选修课程号分别为2001和2005课程

admin2013-03-26  26

问题 学生表S和学生选课表SC两个数据库表,它们的结构如下:
S(学号,姓名,性别,年龄),其中学号、姓名和性别为C型字段,年龄为N型字段;
SC(学号,课程号,成绩),其中学号和课程号为C型字段,成绩为N型字段。
查询同时选修课程号分别为2001和2005课程的学生的学号,正确的命令是(       )。

选项 A、SELECT学号FROM SC WHERE课程号=’2001’AND学号IN(SELECT学号FROM SC WHERE课程号=’2005’)
B、SELECT学号FROM SC WHERE课程号=’2001’AND学号=(SELECT学号FROM SC WHERE课程号=’2005’)
C、SELECT学号FROM SC WHERE课程号=’2001’AND课程号=’2005’
D、SELECT学号FROM SC WHERE课程号=’2001’OR’2005’

答案A

解析 嵌套查询所要求的结果出自一个关系,但相关的条件却涉及多个关系。其内层基本上也是一个SELECT-FROM-WHERE查询语句。简单嵌套查询可使用谓词IN或NOT IN来判断外层的查询条件中是否包含内层查询的结果。本题要查询同时选修2001和2005号课程的学生的学号,外层查询包含了内层查询的结果。故本题答案为A。
转载请注明原文地址:https://jikaoti.com/ti/PEZ0FFFM
0

最新回复(0)