定义学生选修课程的关系模式如下: S(S#,Sn,Sd,Sa)(其属性分别为学号、姓名、所在系、年龄); C(C#,Cn,P#)(其属性分别为课程号、课程名、先选课); SC(S#,C#,G)(其属性分别学号、课号和成绩)。

admin2019-12-17  29

问题 定义学生选修课程的关系模式如下:
    S(S#,Sn,Sd,Sa)(其属性分别为学号、姓名、所在系、年龄);
    C(C#,Cn,P#)(其属性分别为课程号、课程名、先选课);
    SC(S#,C#,G)(其属性分别学号、课号和成绩)。
    检索选修课程名为“操作系统”的成绩在90分以上(含90分)的学生姓名的表达式是(    )。

选项 A、πSnS#C#Cn=’’操作系统’’(C)σC>=90(SC))S)
B、πSnS#C#Cn=’’操作系统’’(C))σC>=90(SC)))
C、πS#C#Cn=’’操作系统’’(C))σC>=90(SC))DS
D、πSnS#C>=2,G>=90(SC))S#,Sa(S))

答案A

解析 课程名“操作系统”需要在C表中进行查找,成绩在“90分以上(含90分)”需要在SC表中查找,“学生姓名”需要在S表中查找,所以必须对上述三个表进行连接后再进行操作。具体操作是:先从C表中选出课程名是“操作系统”的行σCn=’’操作系统’’(C),但是只要“课程”πC#Cn=’’操作系统’’(C)),得到筛选结果的一个小表;在SC表中找出“90分以上(含90分)”的行σG>=90(SC),得到第二个小表;两个小表进行连接操作并从结果中取“学号”列πS#C#Cn=’’操作系统’’(C))σG>=90(SC));这样得到的结果再与S表连接并从结果中只取“姓名”列πSnS#C#C#Cn=’’操作系统’’(C))σG>=90(SC))S)。
转载请注明原文地址:https://kaotiyun.com/show/I6Cp777K
0

相关试题推荐
最新回复(0)