问题
单项选择题
“学生—选课—课程”数据库中的如下三个关系:
学生基本信息:S(S#, SNAME, SEX, AGE)
选课信息:SC(S#, C#, GRADE)
课程信息:C(C#, CNAME, TEACHER)
若要求“查询选修了C2号课程的学生的学生号”,正确的关系代数表达式是()。
Ⅰ.ΠS#(σC# =’C2’(SC) )
Ⅱ.σC#=’C2’(ΠS#(S×SC) )
Ⅲ.σC#=’C2’(ΠS#(SC) )
A.只有
B.只有Ⅱ
C.只有Ⅲ
D.都正确
答案
参考答案:A
解析:
按Ⅰ的关系代数表达式操作步骤为,在选课关系SC中选择选修课程号为C2的元组,再选择这些元组的学生号属性列。按Ⅱ关系代数表达式操作步骤为,求关系S和关系SC的笛卡儿积,再选择学生号属性列,由于这样生成的新关系中没有属性C#,所以无法执行选择操作。Ⅱ关系代数表达式不符合要求。按Ⅲ关系代数表达式操作步骤为,选择关系SC的学生号属性列,由于这样生成的新关系中没有属性C#,所以无法执行选择操作。Ⅲ关系代数表达式不符合要求。因此本题的答案为A。