单选题 学生表:S(学号,姓名,性别)和选课成绩表:SC(学号,课程号,成绩),用SQL语言检索选修课程在3门以上(含3门)的学生的学号、姓名和平均成绩,并按平均成绩降序排序,正确的命令是______。
【正确答案】 A
【答案解析】[解析] GROUP BY用于将查询结果按指定列分成集合组。计算每个学生的平均成绩,应采用GROUP BY对S表中学号和姓名,即GROUP BY S.学号,姓名。使用HAVING子句可以对这些组进行限定,定义这些组所必须满足的条件。题目中的是选修课程在3门以上(含3门)的学生,则SQL中利用。HAVING COUNT(*)> =3进行限定,不用ORDER BY语句,故选项B和C错误。本题中,采用分组函数AVG计算对每个学生分组后的平均成绩,即AVG(成绩),故D选项错误。A选项中的ORDER BY 3 DESC指按查询结果中第三列数据降序排列,即ORDER BY平均成绩DESC,满足题目条件。故选择A选项。