问题
单项选择题
19~25题所用到的数据如表1和表2所示。
|
列出总学分超过8的学生的学号和总学分(只有成绩大于或等于60才能取得学分),下列语句中正确的是______。
A.SELECT 学号,SUM(学分) AS 总学分 FROM SKB; WHERE 成绩>=60 AND 总学分>=8
B.SELECT 学号,SUM(学分) AS 总学分 FROM SKB; HAVING 成绩>=60 AND 总学分>=8
C.SELECT SKB.学号,SUM(KC.学分)AS 总学分 FROM SKB,KC; WHERE KC.课程号=SKB.课程号 AND SKB.成绩>=60; GROUP BY SKB.学号; HAVING 总学分>=8
D.SELECT SKB.学号,SUM(KC.学分)AS 总学分 FROM SKB,KC; GROUP BY SKB.学号; HAVING SKB.成绩>=60 AND 总学分>=8
答案
参考答案:C
解析:
[分析]: 此题涉及成绩和学分,这两个字段分别在两个表中,故也要在两个表之间建立连接。为求得每个学生的总学分,可首先选出成绩大于60分的记录,然后利用GROUP BY子句按照学号相等进行分组,通过统计函数SUM()求出学分的和。由于最后只要显示出学分超过8的学生的信息,故可以使用HAVING子句来筛选符合条件的分组。