数据库SQ习题

B 第6章 创建和管理数据表
第7章 数据查询
习题
一、选择题
1.关于查询语句中ORDER BY子句使用正确的是( )。
A.如果未指定排序字段,则默认按递增排序
B.表的字段都可用于排序
C.如果在SELECT子句中使用了DISTINCT关键字,则排序字段必须出现在查询结果中
D.联合查询不允许使用ORDER BY子句
第2~4题使用7.7节“示例分析”中数据表。
2.使用查询语句:
SELECT STUDENT.学号,STUDENT.姓名,SUM(分数)
FROM STUDENT,GRADE
WHERE STUDENT.学号=GRADE.学号
GROUP BY STUDENT.学号,STUDENT.姓名
查询结果是( )。
A.按学号分类的每个学生所有课程成绩的总分 B.按学号分类的每个学生各课程成绩
C.全体学生的按各课程分类的成绩总分 D.所有学生所有课程成绩总分
3.使用查询语句:
SELECT MAX(分数) AS 最高分
FROM STUDENT,curriculum,GRADE
WHERE STUDENT.学号=GRADE.学号
AND curriculum.课程编号=GRADE.课程编号
AND 课程名称='数据库技术及应用'
查询的结果是( )。
A.87 B.91 C.82 D.90
4.查询选修了课程编号为“0002”的学生的学号和姓名,以下( )语句是错误的。
A.
SELECT 学号,姓名FROM STUDENT
WHERE 学号=(SELECT 学号FROM GRADE WHERE 课程编号='0002')
B.
SELECT STUDENT.学号,STUDENT.姓名
FROM STUDENT,GRADE
WHERE STUDENT.学号=GRADE.学号AND 课程编号='0002'
C.
SELECT STUDENT.学号,STUDENT.姓名
FROM STUDENT JOIN GRADE ON STUDENT.学号=GRADE.学号
WHERE GRADE.课程编号='0002'
D.
SELECT 学号,姓名FROM STUDENT
WHERE 学号IN (SELECT 学号FROM GRADE WHERE 课程编号='0002')
5.下列关于查询结果错误的是( )。
A.查询结果可以显示在表格中
B.查询结果可以按文本方式显示
C.以文本和表格显示的查询结果在保存时,其文件格式不同
D.不管以哪种方式查看,查询结果都会显示在查询结果窗口中
6.在T-SQL语句中,与表达式“仓库号NOT IN ('wh1','wh2')”功能相同的表达式是( )。
A.仓库号='wh1' AND 仓库号='wh2' B.仓库号!='wh1' OR 仓库号# 'wh2'
C.仓库号<>'wh1' OR 仓库号!='wh2' D.仓库号!='wh1' AND 仓库号!='wh2'
7.在T-SQL 的SELECT语句中用于实现关系的选择运算的短语是( )。
A.FOR B.WHILE C.WHERE D.CONDITION
8.使用SQL语句进行分组检索时,为了去掉不满足条件的分组,应当( )。
A.使用WHERE子句 B.在GROUP BY后面使用HAVING子句
C.先使用WHERE子句,再使用HAVING子句 D.先使用HAVING子句,再使用WHERE子句
二、填空题
1.在查询语句中,应在______子句中指定输出字段。
2.如果要使用SELECT、语句返回指定条数的记录,则应使用______关键字来限定输出字段。
3.当一个子SELECT的结果作为查询的条件,即在一个SELECT命令的WHERE子句中出现另一个SELECT命令,这种查询称为______查询。
4.连接查询可分为3种类型:______、______和交叉连接。
5.若要把查询结果存放到一个新建的表中,可使用______子句。
三、判断题
1.在关系数据库SQL Server中,用于检索数据的语句是T-SQL的定义语言。 ( )
2.逻辑运算符(AND、NOT、OR)的运算顺序是AND→OR→NOT。 ( )
3.用于WHERE子句的查询条件表达式可用的比较运算符为:=(等于)、!=或<>(不等于)、>(大于)、>=(大于等于)、<(小于)、<=(小于等于)。 ( )
4.SELECT语句的DISTINCT参数表示输出无重复结果的记录。 ( )
5.如果要使SELECT的查询结果有序输出,需要用GROUP BY子句配合。 ( )

第1个回答  推荐于2016-06-21
最佳答案:
习题
一、选择题
1.关于查询语句中ORDER BY子句使用正确的是( D )。
A.如果未指定排序字段,则默认按递增排序
B.表的字段都可用于排序
C.如果在SELECT子句中使用了DISTINCT关键字,则排序字段必须出现在查询结果中
D.联合查询不允许使用ORDER BY子句
第2~4题使用7.7节“示例分析”中数据表。
2.使用查询语句:
SELECT STUDENT.学号,STUDENT.姓名,SUM(分数)
FROM STUDENT,GRADE
WHERE STUDENT.学号=GRADE.学号
GROUP BY STUDENT.学号,STUDENT.姓名
查询结果是(A )。
A.按学号分类的每个学生所有课程成绩的总分 B.按学号分类的每个学生各课程成绩
C.全体学生的按各课程分类的成绩总分 D.所有学生所有课程成绩总分
3.使用查询语句:
SELECT MAX(分数) AS 最高分
FROM STUDENT,curriculum,GRADE
WHERE STUDENT.学号=GRADE.学号
AND curriculum.课程编号=GRADE.课程编号
AND 课程名称='数据库技术及应用'
查询的结果是( )。
A.87 B.91 C.82 D.90
很遗憾!不知道表中的记录数据,无法判断是哪个选项,但是题意是检索出:选修课程'数据库技术及应用'的学生中成绩最高的。看一下表就知道了。
4.查询选修了课程编号为“0002”的学生的学号和姓名,以下( A )语句是错误的。
A.
SELECT 学号,姓名FROM STUDENT
WHERE 学号=(SELECT 学号FROM GRADE WHERE 课程编号='0002')
B.
SELECT STUDENT.学号,STUDENT.姓名
FROM STUDENT,GRADE
WHERE STUDENT.学号=GRADE.学号AND 课程编号='0002'
C.
SELECT STUDENT.学号,STUDENT.姓名
FROM STUDENT JOIN GRADE ON STUDENT.学号=GRADE.学号
WHERE GRADE.课程编号='0002'
D.
SELECT 学号,姓名FROM STUDENT
WHERE 学号IN (SELECT 学号FROM GRADE WHERE 课程编号='0002')
5.下列关于查询结果错误的是( D )。
A.查询结果可以显示在表格中
B.查询结果可以按文本方式显示
C.以文本和表格显示的查询结果在保存时,其文件格式不同
D.不管以哪种方式查看,查询结果都会显示在查询结果窗口中
6.在T-SQL语句中,与表达式“仓库号NOT IN ('wh1','wh2')”功能相同的表达式是( D )。
A.仓库号='wh1' AND 仓库号='wh2' B.仓库号!='wh1' OR 仓库号# 'wh2'
C.仓库号<>'wh1' OR 仓库号!='wh2' D.仓库号!='wh1' AND 仓库号!='wh2'
7.在T-SQL 的SELECT语句中用于实现关系的选择运算的短语是( C )。
A.FOR B.WHILE C.WHERE D.CONDITION
8.使用SQL语句进行分组检索时,为了去掉不满足条件的分组,应当( B )。
A.使用WHERE子句 B.在GROUP BY后面使用HAVING子句
C.先使用WHERE子句,再使用HAVING子句 D.先使用HAVING子句,再使用WHERE子句
二、填空题
1.在查询语句中,应在__SELECT____子句中指定输出字段。
2.如果要使用SELECT语句返回指定条数的记录,则应使用_TOP__关键字来限定输出字段。
3.当一个子SELECT的结果作为查询的条件,即在一个SELECT命令的WHERE子句中出现另一个SELECT命令,这种查询称为__嵌套____查询。
4.连接查询可分为3种类型:_内连接___、__外连接__和交叉连接。
5.若要把查询结果存放到一个新建的表中,可使用__into tabale 或into dbf____子句。
三、判断题
1.在关系数据库SQL Server中,用于检索数据的语句是T-SQL的定义语言。 (× )
2.逻辑运算符(AND、NOT、OR)的运算顺序是AND→OR→NOT。 ( × )
3.用于WHERE子句的查询条件表达式可用的比较运算符为:=(等于)、!=或<>(不等于)、>(大于)、>=(大于等于)、<(小于)、<=(小于等于)。 ( √ )
4.SELECT语句的DISTINCT参数表示输出无重复结果的记录。 ( √ )
5.如果要使SELECT的查询结果有序输出,需要用GROUP BY子句配合。 ( × )本回答被提问者采纳
相似回答