定义一个反映学生姓名及他的平均成绩的视图将使用关系 “查询选修了3门以上课程的学生的学生号”,正确的SQL语句是

admin2009-10-15  13

问题 定义一个反映学生姓名及他的平均成绩的视图将使用关系
“查询选修了3门以上课程的学生的学生号”,正确的SQL语句是

选项 A、sELEcT S#FROM SC GROUP BY S#WHERE COUNT(*)>3
B、SELECT s#FROM SC GROUP.BY S#HAVING COtJNT(*)>3
C、sELECT S#FROM SC ORDER BY S#HAVING COUNT(*)>3
D、sELECT S#FROM SC ORDER BY S#WHERE COUNT(*)>3

答案B

解析 GROUP BY子句会把在子句所有属性上具有相同值的元组分到一个分组中。ORDER BY子句可以让查询结果中的元组按排列顺序显示。WHERE子句对应关系中的选择谓词,包括一个作用在FROM子句中关系的属性上的谓词。COUNT是聚集函数,通常作用于GROUP BY形成的分组。综上所述,应该首先选GR0uP BY子句,而WHERE子句作用于FROM子句中的关系,而非GROUP BY子句形成的分组,所以应选HAVING子句而非WHERE子句。由此可知,正确答案是B。
转载请注明原文地址:https://kaotiyun.com/show/EUSZ777K
0

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