问题 单项选择题

第32~35题使用如下三个表:学生.DBF:学号C(8),姓名C(12),性别C(2),出生日期D,院系C(8) 课程.DBF:课程编号C(4),课程名称C(10),开课院系C(8) 学生成绩.DBF:学号C(8),课程编号C(4),成绩I 查询每门课程的最高分,要求得到的信息包括课程名称和分数。正确的命令是 A) SELECT课程名称,SUM(成绩)AS分数FROM课程,学生成绩;WHERE课程.课程编号=学生成绩.课程编号;GROUP BY课程名称 B) SELECT课程名称,MAX(成绩)分数FROM课程,学生成绩;WHERE课程.课程编号=学生成绩.课程编号;GROUP BY课程名称 C) SELECT课程名称,SUM(成绩)分数FROM课程,学生成绩;WHERE课程.课程编号=学生成绩.课程编号;GROUP BY课程.课程编号 D) SELECT课程名称,MAX(成绩)AS分数FROM课程,学生成绩;WHERE课程.课程编号=学生成绩.课程编号;GROUP BY课程编号

答案

参考答案:B

解析:使用SQL查询课程的最高分,可以用MAX()函数来实现。由于查询的是每门课程的最高分,所以需要按照课程名称进行分组,故选项B正确。选项A的错误在于查询结果由SUM(成绩)构成,是对分组后的成绩进行了求和,选项C也是同样的错误,选项D错误在于AS子句后只有一个字段名,而查询结果字段有两个,无法匹配,也是错误的。

选择题
填空题