假定有三个关系,学生关系S、课程关系C和学生选课关系SC,它们的结构如下:S(S#,SN,Sex,Age,Dept),C(C#,CN),SC(S#,C#,Grade)。其中,S#为学生号,SN为姓名,Sex为性别,Age为年龄,Dept为系别,C#为课程号

admin2014-11-11  51

问题 假定有三个关系,学生关系S、课程关系C和学生选课关系SC,它们的结构如下:S(S#,SN,Sex,Age,Dept),C(C#,CN),SC(S#,C#,Grade)。其中,S#为学生号,SN为姓名,Sex为性别,Age为年龄,Dept为系别,C#为课程号,CN为课程名,Grade为成绩。检索选修课程“C2,”的学生中成绩最高的学生的学号,正确的SQL语句是(34)

选项 A、(ASELECT S}}FROM SC
    WHERE C#=”C2”AND Grade IN
    (SELECT Grade FROM SC WHERE C#=“C2”)
B、SELECT S#FROM SC
    WHERE C#=“C2”AND Grade>=
    (SELECT Grade FROM SC WHERE C#=“C2”)
C、SELECT S#FROM SC
    WHERE C#=“C2”AND Grade>=ALL
    (SELECT Grade FROM SC WHERE C#=“C2”)
D、SELECTS#FRUM SC
    WHERE C#=“C2”AND Grade NOT IN
    (SELECT Grade FROM SC WHERE C#=“C2”)

答案C

解析 SELECT[ALL|DIsTINCT]<目标列表达式>[,<目标列表达式>]...
FROM<表名或视图名>[,<表名或视图名>]
[WHERE<条件表达式>]
[GROUPBY<列名1>[HAV工NG<条件表达式>]]
[ORDERBY<列名2>[ASC|DESC]…]
子句顺序为SELECT、FROM、WHERE、GROUPBY、HAVING、ORDERBY,但SELECT和FROM是必须的,HAvING子句只能与GROUPBY搭配起来使用。SELECT子句对应的是关系代数中的投影运算,用来列出查询结果中的属性,其输出可以是列名、表达式、集函数(AVG、COtJNT、MAX、MIN、SUM),DISTINCT选项可以保证查询的结果集中不存在重复元组;FROM子句对应的是关系代数中的笛卡儿积,它列出的是表达式求值过程中须扫描的关系;Wt{ERE子句对应的是关系代数中的选择谓词。
转载请注明原文地址:https://kaotiyun.com/show/4XRZ777K
0

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