(31)到(35)题使用如下数据表。 学生”表:学号C(8),姓名C(8),性别C(2),系名(10),出生日期D “课程”表:课程编号C(4),课程名称C(12),开课系名C(10) “成绩”表:学号C(8),课程编号C(4),成绩I 检索每门课程的

admin2013-05-15  36

问题 (31)到(35)题使用如下数据表。
学生”表:学号C(8),姓名C(8),性别C(2),系名(10),出生日期D
“课程”表:课程编号C(4),课程名称C(12),开课系名C(10)
“成绩”表:学号C(8),课程编号C(4),成绩I
检索每门课程的总分,查询结果中包括课程名和总分,正确的语句是(  )。      

选项 A、SELECT课程名称,COUNT(成绩)AS总分FROM课程,成绩;         WHERE课程.课程编号=成绩.课程编号;         ORDER BY成绩.课程编号
B、SELECT课程名称,COUNT(成绩)AS总分FROM课程,成绩;         WHERE课程.课程编号=成绩.课程编号;         GROUP BY成绩.课程编号
C、SELECT课程名称,SUM(成绩)AS总分FROM课程,成绩;         WHERE课程.课程编号=成绩.课程编号;         ORDERBY成绩.课程编号
D、SELECT课程名称,SUM(成绩)AS总分FROM课程,成绩;         WHERE课程.课程编号=成绩.课程编号;         GROUP BY成绩.课程编号

答案D

解析 进行SQL简单计算查询时,还可以加上GROUP BY子句进行分组计算查询。
通常来说,一个计算函数的范围是满足WHERE子句指定条件的所有记录。当加上GROUP BY子句后,系统会将查询结果按指定列分成集合组。当一个计算函数和一个GROUP BY子句一起使用时,计算函数的范围变为每组所有的记录。
本题通过“GROUP BY成绩.课程编号”可以先将记录按“课程编号”分组,然后再通过函数“SUM(成绩)AS总分”对每组记录求和。其中,通过AS短语可以对进行计算的字段指定一个新的字段名。另外,COUNT()函数
转载请注明原文地址:https://kaotiyun.com/show/AEop777K
0

最新回复(0)