[计算机类试卷]国家二级VF机试(关系数据库标准语言SQL)模拟试卷11及答案与解析.doc

上传人:arrownail386 文档编号:500607 上传时间:2018-11-30 格式:DOC 页数:17 大小:54KB
下载 相关 举报
[计算机类试卷]国家二级VF机试(关系数据库标准语言SQL)模拟试卷11及答案与解析.doc_第1页
第1页 / 共17页
[计算机类试卷]国家二级VF机试(关系数据库标准语言SQL)模拟试卷11及答案与解析.doc_第2页
第2页 / 共17页
[计算机类试卷]国家二级VF机试(关系数据库标准语言SQL)模拟试卷11及答案与解析.doc_第3页
第3页 / 共17页
[计算机类试卷]国家二级VF机试(关系数据库标准语言SQL)模拟试卷11及答案与解析.doc_第4页
第4页 / 共17页
[计算机类试卷]国家二级VF机试(关系数据库标准语言SQL)模拟试卷11及答案与解析.doc_第5页
第5页 / 共17页
点击查看更多>>
资源描述

1、国家二级 VF机试(关系数据库标准语言 SQL)模拟试卷 11及答案与解析 一、选择题 1 SQL查询命令的结构是 SELECTFROMWHEREGROUP BYHAVINGORDER BY ,其中指定查询条件的短语是 ( A) SELECT ( B) FROM ( C) WHERE ( D) ORDER BY 2 SQL查询命令的结构是 SELECTFROMWHEREGROUP BYHAVINGORDER BY ,其中 HAVING必须配合使用的短语是 ( A) FROM ( B) GROUP BY ( C) WHERE ( D) ORDER BY 3 如果在 SQL查询的 SELECT短语

2、中使用 TOP,则应该配合使用 ( A) HAVING短语 ( B) GROUP BY短语 ( C) WHERE短语 ( D) ORDER BY短语 4 设有学生表 student(e号,姓名,性别,出生日期,院系 )、课程表 course(课程号,课程名,学时 )和选课表 score(学号,课程号,成绩 ),查询 “计算机系 ”学生的学号、姓名、学生所选课程的课程名和成 绩, 正确的命令是 ( A) SELECT s学号,姓名,课程名,成绩 FROM student s, score sc, course c; WHERE s学号 =sc学号, sc课程号 =c课程号,院系 =计算机系 (

3、B) SELECT学号,姓名,课程名,成绩 FROM student S, score sc, course c; WHERE s学号 =sc学号 AND SC课程号 =c课程号 AND院系 =计算机系 ( C) SELECT s学号,姓名,课程名,成绩 FROM(student S JOIN score so; ON s学号 =sc学号 )JOIN course c ON sc课程号 =c课程号; WHERE院系 =计算机系 ( D) SELECT学号,姓名,课程名,成绩 FROM(student s JOIN score so; ON s学号 =SC学号 )JOIN course c ON

4、 sc课程号 =c课程号; WHERE院系 =计算机系 5 设有学生表 student(学号,姓名,性别,出生日期,院系 )、课程表 course(课程号,课程名,学时 )和选课表 score(学号,课程号,成绩 ),查询所修课程成绩都大于等于 85分的学生的学号和姓名,正确的命令是 ( A) SELECT学号,姓名 FROM student s WHERE NOT EXISTS (SELECT*FROM score sc; WHERE sc学号 =s学号 AND成绩 =85) ( C) SELECT学号,姓名 FROM student s, score sc WHERE s学号 =sc学号

5、AND成绩 =85 ( D) SELECT学号,姓名 FROM student s, score sc WHERE s学号 =sc学号 AND ALL成绩 =85 6 设有学生表 student(学号,姓名,性别,出生日期,院系 )、课程表 course(课程号,课程名,学时 )an选课表 score(学号,课程号,成绩 ),查询选修课程在 5门以上 (含 5门 )的学生的学号、 姓名和平均成绩,并按平均成绩降序排序,正确的命令是 ( A) SELECT s学号,姓名,平均成绩 FROM student s, score sc WHERE s学号 =sc学号; GROUP BY s学号 HAV

6、ING COUNT(*)=5 ORDER BY平均成绩 DESC ( B) SELECT学号,姓名, AVG(成绩 )FROM student s, score sc; WHERE s学号 =sc学号 AND COUNT(*)=5 GROUf, BY学号 ORDER BY 3 DESC ( C) SELECT s学号,姓名, AVG(成绩 )平均成绩 FROM student s, score sc; WHERE s学号 =sc学号 AND COUNT(*)=5; GROUP BY s学号 ORDER BY平均成绩 DESC ( D) SELECT s学号,姓名, AVG(成绩 )平均成绩 F

7、ROM student s, score so; WHERE s学号 =sc学号: GROUP BY s学号 HAVING COUNT(*)=5 ORDER BY 3 DESC 7 查询 2009年被借过书的图书编号和借书日期,正确的 SQL语句是 ( A) SELECT图书编号,借书日期 FROM借阅 WHERE借书日期 =2009 ( B) SELECT图书编号,借书日期 FROM借阅 WHERE year(借书日期 )=2009 ( C) SELECT图书编号,借书日期 FROM借阅 WHERE借书日期 =year(2009) ( D) SELECT图书编号,借书日期 FROM借阅 WH

8、ERE yeat(借书日期 )=year(2009) 8 设有读者 (借书证号,单位,姓名,职称 )和借阅 (借书证号,图 书编号,借书日期,还书日期 )表,查询所有 “工程师 ”读者借阅过的图书编号,正确的 SQL语句是 ( A) SELECT图书编号 FROM读者,借阅 WHERE职称 =“工程师 “ ( B) SELECT图书编号 FROM借阅 WHERE图书编号 =; (SELECT图书编号 FROM借阅 WHERE职称 =“工程师 “) ( C) SELECT图书编号 FROM借阅 WHERE借书证号 IN; (SELECT借书证号 FROM读者 WHERE职称 =“工程师 “) (

9、 D) SELECT图书编号 FROM读者,图书 WHERE职称 =“工程师 “ 9 设有订单表 order(其中包含字段:订单号,客户号,职员号,签订日期,金额 ),删除 2002年 1月 1日以前签订的订单记录,正确的 SQL命令是 ( A) DELETE TABLE order WHERE签订日期 30 ( B) DELETE FROM S WHERE price30 ( C) DELETE S FOR price30 ( D) DELETE S WHERE price30 27 在 SQL语句中,插入一条新记录采用的命令是 ( A) INSERT ( B) ADD ( C) UPDAT

10、E ( D) CREATE 国家二级 VF机试(关系数据库标准语言 SQL)模拟试卷 11答案与解析 一、选择题 1 【正确答案】 C 【试题解析】 在 SQL查询语句中, WHERE是说明查询条件,即选择元组的条件。 【知识模块】 关系数据库标准语言 SQL 2 【正确答案】 B 【试题解析】 在 SQL查询中, HAVING总是跟在 GROUP BY之后,用来限定分组条件。 【知识模块】 关系数据库标准语言 SQL 3 【正确答案】 D 【 试题解析】 TOP表示排序后满足条件的前几条记录。所以需要和 ORDER BY同时使用。 【知识模块】 关系数据库标准语言 SQL 4 【正确答案】

11、C 【试题解析】 本题考查三个表之间的联接查询。在用 SELECT语句进行联接查询,要用 JOIN关键字, ON关键字是两表进行联接的字段,对于本题来说,先以s学号 =sc学号进行学生表和选课表之问联接,再以 sc课程号 =c课程号进行选课表和课程表之间的联接。 【知识模块】 关系数据库标准语言 SQL 5 【正确答案】 A 【试题解析 】 本题考查 SELECT语句中关键字 EXISTS的应用。 EXISTS是用来判断子查询中是否有或没有结果返回,当 EXISTS(查询 )有返回时,则返回真,否则返回假。 NOT EXISTS则相反。 EXISTS做为 WHERE条件时,是先对WHERE前的

12、主查询进行查询,然后用主查询的结果一个一个的代入 EXISTS的查询进行判断,如果为真则输出当前这一条主查询的结果,否则不输出。选项 A的子查询是查询出选课表中的学号等于学生学号并且学生成绩小于 85分的所有学生记录。而在主查询中找出所有学生的学生和姓名不在子查询集的记录就 是题目的要求。 【知识模块】 关系数据库标准语言 SQL 6 【正确答案】 D 【试题解析】 本题考查 SELECT语句中分组和排序短语。在 SELECT语句中分组语使用 GROUP BY HAVING关键字,排序使用 ORDER BY短语,降序使用DESC,本题中用学号分组,用 HAVING COUNT(*)=5对分组进

13、行筛选,用ORDER BY 3DESC按平均成绩降序排序。 【知识模块】 关系数据库标准语言 SQL 7 【正确答案】 B 【试题解析】 根据题意, “借书日期 ”字段 为日期型变量,用 YEARq()函数可求出 “借书日期 ”的年份。 【知识模块】 关系数据库标准语言 SQL 8 【正确答案】 C 【试题解析】 本题考查 SQL的嵌套查询。嵌套查询是一类基于多个表的查询,查询的结果是出自一个表中的字段,但是查询的条件要涉及多个表。这种简单嵌套查询,可使用 IN或 NOT IN来判断在外层的查询条件中是否包含内层查询的结果。这里的 IN相当于集合运算符 。在选项 C中,先在内查询中从读者表中查

14、找出职称是 “工程师 ”的读者的 “借书证号 ”,然后以此为条件再在外查询中从借阅表中查找出 对应的 “图书编号 ” 【知识模块】 关系数据库标准语言 SQL 9 【正确答案】 C 【试题解析】 在 SQL,语句中对表中的记录进行删除的基本格式为: DELETE FROMWHERE,因为是要删除 2002年 1月 1日以前签定的订单记录。 【知识模块】 关系数据库标准语言 SQL 10 【正确答案】 D 【试题解析】 本题考查的是 SQL数据更新语句。该语句的基本命令格式为: UPDATE数据表名 SET字段名 =更新表达式值 WHERE条件表达式 当不使用 WHERE子旬时,则更新全部记录。

15、 【知识模块】 关系数据库标准语言 SQL 11 【正确答案】 A 【试题解析】 Visual FoxPro支持两种 SQL插入格式,第一种为标准格式,第二种是 Visual FoxPro的特殊格式。第一种格式是: INSERT INTO(字段名1,字段名 2, )VALUES( 表达式 1,表达式 2, ) 。其中, INSERT INTO说明向指定的表中插入记录。当插入的不是完整的记录时,可以用字段名1,字段名 2, 指定字段; VALUES(表 达式 1,表达式 2, ) 给出具体的记录值。 【知识模块】 关系数据库标准语言 SQL 12 【正确答案】 B 【试题解析】 SQL的数据更新

16、命令格式是: UPDATESET列名 1=表达式1,列名 2=表达式 2WHERE。一般使用 WHERE子句指定条件,以更新满足条件的一些记录的字段值,并且一次可以更新多个字段。如果不使用 WHERE子句,则更新全部记录。 【知识模块】 关系数据库标准语言 SQL 13 【正确答案】 D 【试题解析】 Visual FoxPro支持两种 SQL插入格式,第一种为标准格式,第二种是 Visual。 FoxPro的特殊格式。第一种格式是: INSERT INTO(字段名1,字段名 2, )VALUES( 表达式 1,表达式 2, ) 。其中, INSERT INTO说明向指定的表中插入记录。当插入

17、的不是完整的记录时,可以用字段名1,字段名 2, 指定字段; VALLIES(表达式 1,表达式 2, ) 给出具体的记录值。本题中 SNO、 CNO为字符型,所以其属性值需要加引号,而数值型数据则不需要。 【知识模块】 关系数据 库标准语言 SQL 14 【正确答案】 A 【试题解析】 SQL定义语句中,删除属性的关键短语为 DROP,而 DELETE命令一般用于表中的记录,从而可以排除选项 B、选项 C和选项 D。 【知识模块】 关系数据库标准语言 SQL 15 【正确答案】 A 【试题解析】 本题考查 UPDATE和 SELECT语句。 UPDATE语句用于修改表中的数据。其语法格式为:

18、 UPDATE表名称 SET列名称 =新值 WHERE列名称 =某值,对于本题来说从关系评分表中计算出每次歌手的平均分,然后用这个平均分更新歌手表 中最后得分字段。 【知识模块】 关系数据库标准语言 SQL 16 【正确答案】 C 【试题解析】 Visual FoxPro支持两种 SQL插入格式,第一种为标准格式,第二种是 Visual FoxPro的特殊格式。第一种格式是: INSERT INTO(字段名1字段名 2, 1)1 VALUES( 表达式 1,表达式 2, ) 。其中。 INSERT INTO说明向指定的表中插入记录,当插入的不是完整的记录时,可以用字段名 1,字段名 2, 指定

19、字段; VALLJES(表达式 1,表达式 2, ) 给出具体的记录值。 【知识模块】 关系数据库标准语言 SQL 17 【正确答案】 D 【试题解析】 SQL的数据更新命令格式是: UPDATESET列名 1=表达式 1,列名 2=表达式 2 WHERE 一般使用 WHERE子句指定条件,以更新满足条件的一些记录的字段值,并且一次可以更新多个字段。如果不使用 WHERE子句,则更新全部记录。 【知识模块】 关系数据库标准语言 SQL 18 【正确答案】 C 【试题解析】 SQL从表中删除数据的命令格式是: DEIETE FROMWHERE。其中, FROM指定从哪个表中删除数据。 WHERE

20、指定被删除的记录所满足的条件,如果不使用 WHERE子句。则表示删除该表中的全部记录。命令 DROP的功能是删除指定的数据表。 【知识模块】 关系数据库标准语言 SQL 19 【正确答案】 D 【试题解析】 SQL的数据操作功能包括数据的插入、更新和删除功能,选项 A是数据插入,选项 B是数据更新,选项 C是数据删除。选项 D是 Visual FoxPro中表记录修改命 令。 【知识模块】 关系数据库标准语言 SQL 20 【正确答案】 D 【试题解析】 本题考查置删除标记的命令和通配符。 SQL置删除标记的命令是: DELETE FROM表名 wHERE逻辑表达式 。 LIKE是字符匹配运算

21、符。通配符表示 0个或多个任意字符。对于条件图书编号以字母 A开头的图书记录用“图书编号 LIKE”A ”表示。 【知识模块】 关系数据库标准语言 SQL 21 【正确答案】 B 【试题解析】 在 SQL语言中, UPDATE是更新命令, INSERT是插入命令,CREATE是创建表的命令, SELECT是查询命令。 【知识模块】 关系数据库标准语言 SQL 22 【正确答案】 D 【试题解析】 客户表和订购单表是相互关联的表,其中客户号是公共字段,客户表是父表,订购单表是子表,题目中说明了订购单表参照客户表,即实施了参照完整性规则。当要向订购单表中插入一条记录时要注意两点: 新记录的订单号不

22、能与表中已有记录的订单号重复,因为订单号是订购单表的主关键字。而题中说明订购单表中已有订购单号 OR1一 OR8,就不能再插入订单号为 OR5的记录,故可排除 A、 B选 项。 由于订购单表要参照客户表,所以如果在要插入的记录中,联接字段值在父表中没有相匹配的值,则禁止插入。而题中说明父表客户表中并没有 C11这个客户号,因此在子表订购单表中不能插入客户号为 C11的记录,排除选项 C。 SQL中,插入操作的命令格式: insert into dbf_name (fnamel ,fname2, )values(eExpressionl , eExpression2, ) ,其中 dbf_nam

23、e指定要插入的表,当插入的不是完整记录时,可以用 fhame1, fhame2, 指定字段,values给出具体的记录值。 【知识模块】 关系数据库标准语言 SQL 23 【正确答案】 C 【试题解析】 在 SQL中用于插入记录的语法可简单表示为: INSERTINTO表名VALUES(插入记录各个字段值列表 )。 【知识模块】 关系数据库标准语言 SQL 24 【正确答案】 A 【试题解析】 本题考查删除命令和与运算符。删除命令 DELETE,题目要求删除学号为 “20091001”且课程号为 “C1”的选课记录,所以学号字段与课程号字段之间是 aIld的关系。所以 where条件应表示为课

24、程号 =C1AND学号 =20091001。 【知识模块】 关系数据库标准语言 SQL 25 【正确答案】 B 【试题解析】 删除字段的 SQL语法可简单表示为: ALTER TABLE表名 DRoP字段名。 【知识模块】 关系数据库标准语言 SQL 26 【正确答案】 B 【试题解析】 SQL中表示删除记录的语法可以简单表示为: DELETEFROM表名 WHERE条件。 VFP中删除记录的语法可以简单表示为: DELETE FOR条件。 【知识模块】 关系数据库 标准语言 SQL 27 【正确答案】 A 【试题解析】 本题考查插入记录的命令。在 SQL语句中,插入一条新记录采用的命令是 INSERT,其格式为: 格式 1: INSERT INTO(Ibf_name(fhame1, fname2, ) VALUES(eXpressionl, eXpression2, ) 格式 2 INSERT INTO dbf_name FROM ARRAY ArrayNamelFROM MEMVAR 【知识模块】 关系数据库标准语言 SQL

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 考试资料 > 职业资格

copyright@ 2008-2019 麦多课文库(www.mydoc123.com)网站版权所有
备案/许可证编号:苏ICP备17064731号-1