试题与答案

(31)~(35)题中使用下列数据表。 “学生”表:学号C(8),姓名C(8),性

题型:单项选择题

题目:

(31)~(35)题中使用下列数据表。
“学生”表:学号C(8),姓名C(8),性别C(2),系名(6)
“课程”表:课程编号C(4),课程名称C(12),开课系名C(10)
“成绩”表:学号C(8),课程编号C(4),成绩N(6,2)

检索每门课程的最高分,要求得到的信息包括课程名称、姓名和最高分,正确的命令是( )。

A.SELECT 课程.课程名称,学生.姓名,MAX(成绩) AS 最高分; FROM 成绩,课程,学生; WHERE 成绩.课程编号=课程.课程编号; AND 成绩.学号=学生.学号; GROUP BY 课程编号

B.SELECT 课程.课程名称,学生.姓名,MAX(成绩) AS 最高分; FROM 成绩,课程,学生; WHERE 成绩.课程编号=课程.课程编号; AND 成绩.学号=学生.学号; GROUP BY 课程.课程编号

C.SELECT 课程.课程名称,学生.姓名,MAX(成绩) AS 最高分; FROM 成绩,课程,学生; WHERE 成绩.课程编号=课程.课程编号; AND 成绩.学号=学生.学号; ORDER BY 课程.课程编号

D.SELECT 课程.课程名称=学生.姓名,MAX(成绩) AS 最高分; FROM 成绩,课程,学生; WHERE 成绩.课程编号=课程.课程编号; AND 成绩.学号=学生.学号; ORDER BY 课程.课程编号

答案:

参考答案:B

解析: 本题中首先通过GROUP BY短语将“课程”表中的记录按“课程编号”分组,然后通过MAX()函数求出每组中的最高成绩,即每门课程的最高成绩,由于查询输出结果涉及到多个表的字段,因此要使用连接查询,表之间的连接条件放在WHERE短语中,AND用来连接两个连接条件,以保证在查询的3个表之间建立联系。

试题推荐
微信公众账号搜索答案