下列查询结果是什么? 已知关系模式:S(Sno,Sname,Sclass),C(Cno,Cname,Cteacher),SC(Sno,Cno,Scgrade)。其中,S为学生关系:Sno学号, Sna

题目

下列查询结果是什么?
已知关系模式:S(Sno,Sname,Sclass),C(Cno,Cname,Cteacher),SC(Sno,Cno,Scgrade)。其中,S为学生关系:Sno学号, Sname姓名,Sclass班级; C为课程关系:Cno课程号, Cname课程名, Cteacher任课教师;SC为学生选课关系:Scgrade成绩。
下列查询的结果是什么?
(1)SELECT * FROM SC WHERE Cno= ‘C01’ and Cno= ‘C02’;
(2)SELECT Sno FROM SC WHERE Scgrade<60 and count(*)>2;
(3)SELECT Sno, Avg(Scgrade) FROM SC WHERE Scgrade<60 Group by Sno;

请试着回答一下,并分享你的观点。

(1)
没有结果。SQL查询语句的意思是同时满足课程号为C01和C02的学生。属性相同不能用and,而是应该用嵌套查询。
(2)
SQL查询语句的意思是满足成绩小于60,且课程数大于2的学号。条件语句中不能用聚合函数。
(3)
有结果。SQL查询语句的意思是查询成绩小于60的平均成绩和学号,并按照学号进行排列。
改:

SELECT studentNo,Avg(score)
FROM Score
WHERE score<60
Group by studentNo
发布了42 篇原创文章 · 获赞 22 · 访问量 1万+

猜你喜欢

转载自blog.csdn.net/weixin_46218781/article/details/104939503