如下三个数据库表: 学生(学号 C(8),姓名 C(8),性别 C(2),班级 C(8)) 课程(课程编号 C(8),课程名称 C(20)) 成绩(学号 C(8),课程编号 C(8),成绩 N(5,1)) 查询每门课程的最高分,要求得到的信息包括课程名和最

admin2013-03-26  15

问题 如下三个数据库表:
学生(学号 C(8),姓名 C(8),性别 C(2),班级 C(8))
课程(课程编号 C(8),课程名称 C(20))
成绩(学号 C(8),课程编号 C(8),成绩 N(5,1))
查询每门课程的最高分,要求得到的信息包括课程名和最高分,正确的命令是(       )。

选项 A、SELECT 课程.课程名称, MAX(成绩) AS 最高分 FROM 成绩,课程;
WHERE 成绩.课程编号 = 课程.课程编号;
GROUP BY 课程.课程编号
B、SELECT 课程.课程名称, MAX(成绩) AS 最高分 FROM 成绩,课程;
WHERE 成绩.课程编号 = 课程.课程编号;
GROUP BY 课程编号
C、SELECT 课程.课程名称, MIN(成绩) AS 最高分 FROM 成绩,课程;
WHERE 成绩.课程编号 = 课程.课程编号;
GROUP BY 课程.课程编号
D、SELECT 课程.课程名称, MIN(成绩) AS 最高分 FROM 成绩,课程;
WHERE 成绩.课程编号 = 课程.课程编号;
GROUP BY 课程编号

答案A

解析 求最大值要利用MAX函数。要查询每门课程的最高分,需要对课程进行分组,而由于课程名称可能出现重名,因此分组依据为课程编号,以确保记录的唯一性。利用AS短语。可将"成绩"字段重新命名为"最高分"作为新的字段名,以显示查询结果。选项B的分组条件中,没有指定从哪个表中进行记录分组,因此系统报错。选项C和选项D的计算函数使用错误。
转载请注明原文地址:https://jikaoti.com/ti/LhZ0FFFM
0

最新回复(0)