定义学生选修课程的关系模式如下:   s(s#,sn,sd,sa)(其属性分别为学号、姓名、所在系和年龄)   c(c#,Cn,P#)(其属性分别为课程号、课程名和选修课)   sc(s#,c#,G)(其属性分别为学号、课程号和成绩)   检索选修

admin2022-09-09  38

问题 定义学生选修课程的关系模式如下:
   s(s#,sn,sd,sa)(其属性分别为学号、姓名、所在系和年龄)
   c(c#,Cn,P#)(其属性分别为课程号、课程名和选修课)
   sc(s#,c#,G)(其属性分别为学号、课程号和成绩)
   检索选修了课程名为“操作系统”的成绩在90分以上(含90分)的学生的姓名的表达式是(          )。

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

答案A

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

最新回复(0)