单选(1分)
如下几个表所示学生、课程和选课关系,用SQL语言实现下列操作。
试列出计算机系所开课程(CS标志)的最高成绩、最低成绩和平均成绩。如果某门课程的成绩不全(即“成绩”中有NULL出现),则该课程不予统计,结果按“课程号”升序排列。正确的SQL语句是_____。
正确答案:D
解析: A、此选项不正确,缺少连接条件。 B、此选项不正确,缺少连接条件。 C、此选项不正确,FROM后面的各个子表应有逗号区隔。 D、此选项正确。
正确答案:D
解析: A、此选项不正确,多了身高这个属性。 B、此选项不正确,应该是AVG,而不是COUNT。 C、此选项不正确,AVG函数不是AVER函数。 D、此选项正确。
-
A.
SELECT 课程号,MAX(成绩),MIN(成绩),AVG(成绩) FROM 选课
WHERE 课程号 Like ‘CS%’ GROUP BY 课程号 HAVING 课程号 NOT IN
(SELECT 课程号 FROM 选课 WHERE 成绩 IS NULL)
ORDER BY 课程号;
-
B.
SELECT 课程号,MAX(成绩),MIN(成绩),AVG(成绩) FROM 选课
WHERE 课程号 Like ‘CS%’ GROUP BY 课程号
HAVING 课程号 NOT IN (SELECT 课程号 FROM 选课 WHERE 成绩 IS NULL)
-
C.
SELECT 课程号,MAX(成绩),MIN(成绩),AVG(成绩) FROM 选课
WHERE 课程号 Like ‘CS%’ GROUP BY 课程号
HAVING 课程号 IN (SELECT 课程号 FROM 选课 WHERE 成绩 IS NULL)
ORDER BY 课程号;
-
D.
SELECT MAX(成绩),MIN(成绩),AVG(成绩) FROM 选课
WHERE 课程号= ‘CS%’ GROUP BY 课程号
HAVING 课程号 NOT IN (SELECT 课程号 FROM 选课 WHERE 成绩 IS NULL)
ORDER BY 课程号;
-
答案:A
A.题目要显示最高成绩,最低成绩和平均成绩,分别是MAX(成绩),MIN(成绩),AVG(成绩);要排除没有成绩的学生,先选出成绩为NULL的,为“SELECT 课程号 FROM 选课 WHERE 成绩 IS NULL”,所以排除没有成绩的即是NOT IN,由于是选出课程名中包括CS标志的,所以WHERE应该是:课程号 LIKE ‘CS%’;按照课程号排序,Order by课程号,默认是升序,注意GROUP By 和 HAVING是连起来用的,综上此选项正确。
B.此选项不正确,缺少排序子句。
C.此选项不正确,应该是NOT IN。
D.此选项不正确,模糊查询不能用=。
-
单选
如下几个表所示学生、课程和选课关系,用SQL语言实现下列操作。
查询选修CS-110课程的学生名。正确的SQL语句是_____。
-
A.
SELECT 姓名 FROM 学生,选课 WHERE 课程号=‘CS-110’;
-
B.
SELECT 姓名 FROM 学生,选课 WHERE 选课.课程号=‘CS-110’;
-
C.
SELECT 姓名 FROM 学生 选课 WHERE 学生.学号=选课.学号 AND 课程号=‘CS-110’;
-
如下几个表所示学生、课程和选课关系,用SQL语言实现下列操作。
统计学生的平均身高。正确的SQL语句是_____ 。
-
A.
SELECT 身高,AVG(身高) FROM 学生;
-
B.
SELECT COUNT(身高) FROM 学生;
-
C.
SELECT AVER(身高) FROM 学生;
-
D.
SELECT AVG(身高) FROM 学生;
如下几个表所示学生、课程和选课关系,用SQL语言实现下列操作。
查询缺成绩的学生名及课程号。正确的SQL语句是_____。
A.
SELECT 姓名,课程号 FROM 学生,选课 WHERE 学生.学号=选课.学号 AND 成绩=‘ ’;
B.
SELECT 姓名,课程号 FROM 学生,选课 WHERE 学生.学号=选课.学号 AND 成绩 IS NULL;
C.
SELECT 姓名,课程号 FROM 学生,选课 WHERE 成绩 IS NULL;
D.
SELECT 姓名,课程号 FROM 学生,选课 WHERE 成绩=‘ ’;
正确答案:B
解析: A、此选项不正确,缺成绩不是成绩为空格。 B、此选项正确。 C、此选项不正确,缺少连接条件。 D、此选项不正确,缺少连接条件而且缺成绩不是为空格。
如下几个表所示学生、课程和选课关系,用SQL语言实现下列操作。
查询1996年出生的学生姓名及其秋季所修课程的课程号及成绩。正确的SQL语句是_____ 。
A.
SELECT 姓名,课程号,成绩 FROM 学生,选课,课程 WHERE 学生.出生日期=1996 AND 课程.开课学期=’秋’;
B.
SELECT 姓名,课程号,成绩 FROM 学生,选课,课程 WHERE 学生.学号=选课.学号 AND 选课.课程号=课程.课程号 AND 出生日期=1996 AND 开课学期=’秋’;
C.
SELECT 姓名,课程号,成绩 FROM 学生,选课,课程WHERE 学生.学号=选课.学号 AND 学生.Year(出生日期)=1996 AND 课程.开课学期=’秋’;
D.
SELECT 姓名,课程号,成绩 FROM 学生,选课,课程 WHERE 学生.学号=选课.学号 AND 选课.课程号=课程.课程号 AND Year(出生日期)=1996 AND 开课学期=’秋’;
正确答案:D
解析: A、此选项不正确,缺少连接条件。 B、此选项不正确,出生日期=1996不正确。 C、此选项不正确,缺少连接条件。 D、此选项正确。