问题 单项选择题

下列各题使用如下2个表:
学生表(学号,姓名,性别,出生日期,课程编号,成绩)
课程表(课程编号,课程名称)

查询每门课成绩最好的信息,要求得到的信息包括姓名、课程编号、课程名称、最好成绩,正确的命令是______。

A.SELECT姓名,课程编号,课程名称,MAX(成绩)FROM学生,课表WHERE学生.课程编号=课表.课程编号:GROUP BY姓名

B.SELECT姓名,课程编号,课程名称,MAX(成绩)FROM学生,课表WHERE学生.课程编号=课表.课程编号:GROUP BY课程编号

C.SELECT姓名;课程编号,课程名称,MIN(成绩)FROM学生,课表WHERE学生.课程编号=课表.课程编号;GROUP BY课程编号

D.SELECT姓名,课程编号,课程名称,MIN(成绩)FROM学生,课表WHERE学生.课程编号=课表.课程编号;GROUP BY姓名

答案

参考答案:B

解析: SELECT查询命令的使用方法是:
SELECT[ALL|DISTINCT]<目标列表达式>[,<目标列表达式>]…FROM <基本表或视图>[,<基本表或视图>]…[WHERE<条件表达式>]
[GROUP BY<列名>[HAVING<内部函数表达式>]][ORDER BY<列名>[ASC|DESC]]
这里由于要求每门课的最好成绩,因此必须对课程编号进行分组。如果要查找的是每个人的最好成绩,则需要对姓名进行分组。

选择题
填空题 案例分析题