软件水平考试

查询“软件工程”课程的平均成绩、最高成绩与最低成绩之间差值的SQL语句如下:SELECT AVG(成绩)AS平均成绩,( )FROM C,SCWHEREC.课程名=‘软件工程’AND C.课程号=SC.课程号;A.差值AS MAX(成绩)-MIN(成绩) B.MAX(成绩)-MIN(成绩)AS差值 C.差值IN MAX(成绩)-MIN(成绩) D.MAX(成绩)-MIN(成绩)IN差值

题目
查询“软件工程”课程的平均成绩、最高成绩与最低成绩之间差值的SQL语句如下:SELECT
AVG(成绩)AS平均成绩,( )FROM C,SCWHEREC.课程名=‘软件工程’AND C.课程号=SC.课程号;

A.差值AS MAX(成绩)-MIN(成绩)

B.MAX(成绩)-MIN(成绩)AS差值

C.差值IN MAX(成绩)-MIN(成绩)

D.MAX(成绩)-MIN(成绩)IN差值
如果没有搜索结果,请直接 联系老师 获取答案。
如果没有搜索结果,请直接 联系老师 获取答案。
相似问题和答案

第1题:

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

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

第2题:

设有SC (学号,课程号,成绩)表,下面SQL的SELECT语句检索成绩高于或等于平均成绩的学生的学号。

SELECT 学号 FROM sc

WHERE 成绩>=(SELECT【 】FROM sc)


正确答案:AVG(成绩)
AVG(成绩) 解析:检索成绩高于或等于平均成绩的学生的学号,首先应计算出SC表中的学生的平均成绩再找出成绩高于或等于平均成绩的学生的学号,计算平均成绩应使用AVG()函数,所以可以使用命令:SELECT学号FROM sc WHERE成绩>=(SELECT AVG(成绩)FROM sc) 。

第3题:

假设同一名称的课程有不同的学生选修和不同的老师教授,则计算每门课程的平均分的SQL语句是( )。

A)SELECT课程名称,AVG(成绩)FROM课程GROUP BY成绩

B)SELECT课程名称,AVG(成绩)FROM课程ORDER BY成绩

C)SELECT课程名称,AVG(成绩)FROM课程ORDER BY课程名称

D)SELECT课程名称,AVG(成绩)FROM课程GROUP BY课程名称


正确答案:D

第4题:

查询成绩在70分至85分之间学生的学号、课程号和成绩,正确的SQL语句是( )。

A.SELECT学号,课程号,成绩FROM SC WHERE成绩BETWEEN 70 AND 85

B.SELECT学号,课程号,成绩FROM SC WHERE成绩>=70 OR成绩<=85 from="" sc="">=70 OR<=85 from="" sc="">=70 AND<=85


正确答案:A
A。【解析】SQLSELECT中使用的特殊运算符包括BETWEENNumberAANDNumberB,该运算符表示该查询的条件是在NumberA与NumberB之内,相当于用AND连接的一个逻辑表达式。

第5题:

查询有选课记录,但没有考试成绩的学生的学号和课程号,正确的SQL语句是 ______。

A.SELECT 学号,课程号 FROM sc WHERE 成绩=""

B.SELECT 学号,课程号 FROM sc WHERE 成绩=NULL

C.SELECT 学号,课程号 FROM sc WHERE 成绩 IS NULL

D.SELEC T学号,课程号 FROM sc WHERE 成绩


正确答案:C
解析:在SC表中成绩字段为数值型数据且初始为空值,本题要求查询出有选课记录,但没有考试成绩的学生的学号和课程号,只要成绩记录为空就说明没有考试成绩,即查询成绩字段为空值。查询空值时要使用IS NULL,而=NULL是无效的,因为空值不是一个确定的值,所以不能使用“=”这样的运算符进行比较,所以选项C的语法是正确的。

第6题:

要在学生选课表中查询所有2号课程的选课记录,并将查询结果按成绩升序排列,则可以使用的SQL语句是“SELECT * FROM 学生选课 WHERE 课程号="2" ORDER BY ()”

A. 成绩

B. 成绩 DESC

C. 成绩 ASC

D. 100-成绩 DESC


正确答案:ACD

第7题:

查询成绩在70分至85分之间学生的学号、课程号和成绩,正确的SQL语句是 ______。

A.SELECT 学号,课程号,成绩FROM sc WHERE 成绩 BETWEEN 70 AND 85

B.SELECT 学号,课程号,成绩FROM sc WHERE 成绩>=70 OR 成绩<=85

C.SELECT 学号,课程号,成绩FROM sc WHERE 成绩>=70 OR<=85

D.SELECT 学号,课程号,成绩FROM sc WHERE 成绩>=70 AND<=85


正确答案:A
解析:查询成绩在70分至85分之间学生的学号、课程号和成绩,这三个字段都在SC表中,因此查询结果应该是从SC表,成绩在70到85分之间是指包括边界70分和85分,A选项“WHERE 成绩 BETWEEN 70 AND 85”等价于“成绩>=70 and成绩<=85”,是符合题意的,所以选项A是正确的。成绩在70到85之间指成绩既要大于等于70又要小于等于85,两个条件之间的关系应该为“且”的关系,所以选项B、C均不正确。成绩小于等于85应该指明字段的字段名,所以选项D的表达式也是不正确的。

第8题:

查询选修课程号为“101”课程得分最高的同学,正确的SQL语句是 ______。

A.SELECT 学生.学号,姓名FROM 学生,选课WHERE 学生.学号=选课.学号 AND 课程号=“101” AND 成绩>=ALL (SELECT 成绩 FROM 选课)

B.SELECT 学生.学号,姓名FROM 学生,选课 WHERE 学生.学号=选课.学号 AND 成绩>=ALL(SELECT 成绩 FROM 选课 WHERE 课程号=“101”)

C.SELECT 学生. 学号,姓名 FROM 学生,选课 WHERE 学生. 学号=选课.学号 AND 成绩>=ANY (SELECT 成绩 FROM 选课 WHERE 选课号=“101”)

D.SELECT 学生.学号,姓名 FROM 学生,选课 WHERE 学生.学号=选课.学号 AND 课程号=“101”AND 成绩>= ALL(SELECT 成绩 FROM 选课 WHERE课程号=“101”)


正确答案:D
解析:选项A中的子查询并没有限定选择“课程号”为“101”,则此命令选择出来的结果是“101”课程得分大于等于所有科目成绩的记录,如果其余课目的成绩有记录大于“101”科目的最高成绩,则此查询无结果,此选择错误。
选项B中的查询并没有限定选择“课程号”为“101”,则此命令选择出来的结果是所有课程得分大于等于所有“101”科目成绩的记录,如果其余课目的成绩有记录大于“101”科目的最高成绩,则此查询将查询出错误结果,此选项错误。
选项C中的查陶并没有限定选择“课程号”为“101”,则此命令选择出来的结果是所有课程得分大于等于任意“101”科目成绩的记录,此查询将查询出错误的结果,此选项错误。

第9题:

现有某高校的选修课记录(SC):学号、姓名、课程名称、成绩,要查询没有选修课成绩的学生和课程,正确的SQL语句是( )。

A. SELECT学号,课程号FROM sc WHERE成绩=””

B. SELECT学号,课程号FROM sc WHERE成绩=NULL

C. SELECT学号,课程号FROM SC WHERE成绩IS NULL

D. SELECT学号,课程号FROM SC WHERE成绩


正确答案:C
利用空值查询,查询空值时要使用“Is NULL”,而=“”、=NULL都是无效的,因为空值是一个不确定的值,所以不能用“=”进行比较。

第10题:

查询有选课记录,但没有考试成绩的学生的学号和课程号,正确的sQL语句是( )。

A.SELECT学号,课程号FROM SC WHERE 成绩

B.SELECT学号,课程号FROM SC WHERE 成绩 =NULL

C.SELECT学号,课程号FROM SC WHERE成绩ls NULL

D.SELECT学号课程号FROM SC WHERE成绩


正确答案:C
C。【解析】查询空值时要使用ISNULL,而“=NULL”是无效的,因为空值不是一个确定的值,所以不能用“=”这样的运算符进行比较。

更多相关问题