1、国家二级 VF机试(选择题)模拟试卷 158及答案与解析 一、选择题 1 在 Visual FoxPro中,如下描述正确的是 ( A)对表的所有操作,都不需要使用 USE命令先打开表 ( B)所有 SQL命令对表的所有操作都不需使用 USE命令先打开表 ( C)部分 SQL命令对表的所有操作都不需使用 USE命令先打开表 ( D)传统的 FoxPro命令对表的所有操作都不需使用 USE命令先打开表 2 在 SQL SELECT语句中,为了将查询结果存储到临时表,应该使用短语 ( A) TO CURSOR ( B) INTO CURSOR ( C) INTO DBF ( D) TO DBF 3
2、设有订单表 order(其中包含字段:订单号,客户号,职员号,签订日期,金额 ),查询 2007年所签订单的信息,并按金额降序排序,正确的 SQL命令是 ( A) SELECT*FROM order WHERE YEAR(签订日期 )=2007 ORDER BY金额DESC ( B) SELECT*FROM order WHILE YEAR(签订日期 )=2007 ORDER BY金额 ASC ( C) SELECT*FROM order WHERE YEAR(签订日期 )=2007 ORDER BY金额 ASC ( D) SELECT*FROM order WHILE YEAR(签订日期 )
3、=2007 ORDER BY金额DESC 4 检索 “投中 3分球 ”小于等于 5个的运动员中 “得分 ”最高的运动员的 “得分 ”,正确的 SQL语句是 ( A) SELECT MAX(得分 )FROM运动员 WHERE投中 3分球 600 AND(名称 =主机板 AND名称 =硬盘 ) ( B) SELECT*FROM产品 WHERE单价 600 AND(名称 =主机板 OR名称 =硬盘 ) ( C) SELECT*FROM 产品 FOR 单价 600 AND(名称 =主机板 AND名称 =硬盘 ) ( D) SELECT*FROM产品 FOR单价 600 AND(名称 =主机板 OR名称
4、 =硬盘 ) 7 查询客户名称中有 “网络 ”二字的客户信息的正确命令是 ( A) SELECT*FROM 客户 FOR 名称 LIKE网络 ( B) SELECT*FROM 客户 FOR 名称 =网络 ( C) SELECT*FROM客户 WHERE名称 =网络 ( D) SELECT*FROM 客户 WHERE 名称 LIKE网络 8 设有学生表 S(学号,姓名,性别,年龄 ),查询所有年龄小于等于 18岁的女同学,并按年龄进行降序排序,生成新的表 WS,正确的 SQL语句是 ( A) SELECT*ROM S: WHERE 性别 =女 AND年龄 =1982-03-20AND性别 =男
5、( B) SELECT*FROM学生 WHERE出生日期 =1982-03-20性性 =男 ( D) SELECT*FROM学生 WHERE出生日期 =ALL(SELECT成绩 FROM选课 ) ( B) SELECT学生学号,姓名 FROM学生,选课 WHERE学生学号 =选课学号; AND成绩 =ALL(SELECT成绩 FROM选课 WHERE课程号 =101) ( C) SELECT学生学号,姓名 FROM学生,选课 WHERE学生学号 =选课学号 ; AND成绩 =ALL(SELECT成绩 FROM选课 WHERE课程号 =101) ( D) SELECT学生学号,姓名 FROM学生
6、,选课 WHERE学生学号 =选课学号 AND; 课程号 =101AND成绩 =ALL(SELECT成绩 FROM选课 WHERE课程号 =101) 15 SQL的 SELECT语句中, “HAVING”用来筛选满足条件的 ( A)列 ( B)行 ( C)关系 ( D)分组 16 下列关于 SELECT短语的描述中错误的是 ( A) SELECT短语中可以使用别名 ( B) SELECT短语中只能包含表中的列及其构成的表达式 ( C) SELECT短语 规定了结果集中的列顺序 ( D)如果 FROM短语引用的两个表有同名的列,则 SELECT短语引用它们时必须使用表名前缀加以限定 17 与 “
7、SELECT*FROM学生 INTO DBF A”等价的语句是 ( A) SELECT*FROM学生 lNTO A ( B) SELECT*FROM学生 INTO TABLE A ( C) SELECT*FROM学生 TO TABLE A ( D) SELECT*FROM学生 TO DBF A 18 查询在 “北京 ”和 “上海 ”出生的学生信息的 SQL语句是 ( A) SELECT*FROM学生 WHERE出生地 =北京 AND上海 ( B) SELECT*FROM学生 WHERE出生地 =北京 OR上海 ( C) SELECT*FROM学生 WHERE出生地 =北京 AND出生地 =上海
8、 ( D) SELECT*FROM学生 WHERE出生地 =北京 OR出生地 =上海 19 在 SQL语句中,与表达式 “年龄 BETWEEN 12 AND 46”功能相同的表达式是 ( A)年龄 =12 OR=12 AND=12 OR年龄 =12 AND年龄 9 00 OR最后得分 =8 00 AND最后得分 9 00 OR最后得分 =9 00 24 假设 temp dbf数据表中有两个字段 “歌手号 ”和 “最后得分 ”,下面程序段的功能是:将 temp dbf中歌手的 “最后得分 ”填入 “歌手 ”表对应歌手的 “最后得分 ”字段中 (假设己增加了该字段 ),在下划线处应该填写的 SQL
9、语句是 USE歌手 DO WHILE NOT.EOF() _ REPLACE歌手最后得分 W1TH a2 SKIP ENDDO ( A) SELECT*FROM temp WHERE temp歌手号 =歌手歌手号 TO ARRAY a ( B) SELECT*FROM temp WHERE temp歌手号:歌手歌手号 INTO ARRAY a ( C) SELECT*FROM temp WHERE temp歌手号 =歌手歌手号 TO FILE a ( D) SELECT*FROM temp WHERE temp歌手号 =歌手歌手号 INTO FILE a 25 与 “SELECT DISTIN
10、CT歌手号 FROM歌手 WHERE最后得分 =ALL; (SELECT最后得分 FROM歌手 WHERE SUBSTR(歌手号, 1, 1)=2)” 等价的 SOL语句是 ( A) SELECT DISTINCT歌手号 FROM歌手 WHERE最后得分 =; (SELECT MAX(最后得分 )FROM歌手 WHERE SUBSTR(歌手号, 1, 1)=2) ( B) SELECT DISTINCT歌手号 FROM歌手 WHERE最后得分 =; (SELECT MIN(最后得分 )FROM歌手 WHERE SUBSTR(歌手号, 1, 1)=2) ( C) SELECT DISTINCT歌
11、手号 FROM歌手 WHERE最后得分 =ANY; (SELECT最后得分 FROM歌手 WHERE SUBSTR(歌手号, 1, 1)=2) ( D) SELECT DISTINCT歌手号 FROM歌手 WHERE最后得分 =SOME; (SELECT最后得分 FROM歌手 WHERE SUBSTR(歌手号, 1, 1)=2) 26 假设 “订单 ”表中有订单号、职员号、客户号和金额字段,正确的 SQL语句只能是 ( A) SELECT职员号 FROM订单 ; GROUP BY职员号 HAVING COUNT(*)3 AND AVG_金额 200 ( B) SELECT职员号 FROM订单:
12、 GROUP BY职员号 HAVING COUNT(*)3 AND AVG(金额 )200 ( C) SELECT职员号 FROM订单; GROUP BY职员号 HAVING COUNT(*)3 WHERE AVG(金额 )200 ( D) SELECT职员号 FROM订单 ; GROUP BY职员号 WHERE COUNT(*)3 AND AVG金额 200 27 假设同一名称的产品有不同的型号和产地,则计算每种 产品平均单价的 SQL语句是 ( A) SELECT产品名称, AVG(单价 )FROM产品 GROUP BY单价 ( B) SELECT产品名称, AVG(单价 )FROM产品
13、ORDER BY单价 ( C) SELECT产品名称, AVG(单价 )FROM产品 ORDER BY产品名称 ( D) SELECT产品名称, AVG(单价 )FROM产品 GROUP BY产品名称 28 设有 S(学号,姓名,性别 )和 sc(学号,课程号,成绩 )两个表,用下列 SQL语句检索选修的每门课程的成绩都高于或等于 85分的学生的学号、姓名和性别,正确的是 ( A) SELECT学号,姓名,性别 FROM s WHERE EXISTS; (SELECT*FROM sc WHERE sc学号 =s学号 AND成绩 85) ( D) SELECT学号,姓名,性别 FROM s WH
14、ERE NOT EXISTS; (SELECT*FROM sc WHERE sc学号 =s学号 AND成绩 =ALL(SELECT单价FROM产品 WHERE SUBSTR(产品号, 1, 1)=2)”等价的 SQL命令是 ( A) SELECT DISTINCT产品号 FROM产品 WHERE单价 =; (SELECT MAX(单价 )FROM产品 WHERE SUBSTR(产品号, 1, 1)=2) ( B) SELECT DISTINCT产品号 FROM产品 WHERE单价 =; (SELECT MIN(单价 )FROM产品 WHERE SUBSTR(产品号, 1, 1)=2) ( C)
15、 SELECT DISTINCT产品号 FROM产品 WHERE单价 =ANY: (SELECT单价 FROM产品 WHERE SUBSTR(产品号, 1, 1)=2) ( D) SELECT DISTINCT产品号 FROM产品 WHERE单价 =SOME; (SELECT单价 FROM产品 WHERE SUBSTR(产 品号, 1, 1)=2) 30 SQL语言的查询语句是 ( A) INSERT ( B) UPDATE ( C) DELETE ( D) SELECT 31 SQL的 SELECT语句中, “HAVING”用来筛选满足条件的 ( A)列 ( B)行 ( C)关系 ( D)分
16、组 32 在 Visual FoxPro中,假设教师表 T(教师号,姓名,性别,职称,研究生导师 )中,性别是 C型字段,研究生导师是 L型字段。若要查询 “是研究生导师的女老师 ”信息,那么 SQL语句 “SELECT*FROM T WHERE”中的 应是 ( A)研究生导师 AND性别 =女 ( B)研究生导师 OR性别 =女 ( C)性别 =女 AND研究生导师 = F ( D)研究生导师 = T OR性别 =女 33 查询学生选修课程成绩小于 60分的学号,正确的 SQL语句是 ( A) SELECT DISTINCT学号 FROM SC WHERE成绩 =70 OR成绩 =70 OR
17、=70 AND20 ORDER BY单价 DESC ( B) SELECT商品名,单价,销售日期,销售数量 FROM商品 JOIN销售 WHERE(单价 BETWEEN 10AND 50)AND销售数量 20 ORDE RBY单价 ( C) SELECT商品名,单价,销售日期,销售数量 FROM商品,销售 WHERE(单价 BETWEEN 10 AND 50)AND销售数量 20 ON商品商品号 =销售商品号 ORDER BY单价 ( D) SELECT商品名,单价,销售日期,销售数量 FROM商品,销售 WHERE(单价 BETWEEN 10 AND 50)AND销售数量 20 AND商品商
18、品号 =销售商品号 ORDER BY单价 DESC 53 查询销售金额合计超过 20000的商店,查询结果包括商店名和销售金额合计。正确命令是 ( A) SELECT商店名, SUM(销售数量 *单价 )AS销售金额合计 FROM商店,商品,销售 WHERE销售金额合计 20000 ( B) SELECT商店名, SUM(销售数量 *单价 )AS销售金 额合计 20000 FROM商店,商品,销售 WHERE商品商品号 =销售商品号 AND商店商店号 =销售商店号 ( C) SELECT商店名, SUM(销售数量 *单价 )AS销售金额合计 FROM商店,商品,销售 WHERE商品商品号 =销
19、售商品号 AND商店商店号 =销售商店号 AND SUM(销售数量 *单价 )20000 GROUP BY商店名 ( D) SELECT商店名, SUM(销售数量 *单价 )AS销售金额合计 FROM商店,商品,销售 WHERE商品商品号 =销售商品号 AND商店商店号 =销售商 店号 GROUP BY商店名 HAVING SUM(销售数量 *单价 )20000 54 设有学生表 student(学号,姓名,性别,出生日期,院系 )、课程表 course(课程号,课程名,学时 )和选课表 score(学号,课程号,成绩 ),查询同时选修课程号为C1和 C5课程的学生的学号,正确的命令是 ( A
20、) SELECT学号 FROM score sc WHERE课程号 =C1AND学号 IN; (SELECT学号 FROM score sc WHERE课程号 =C5) ( B) SELECT学号 FROM score sc WHERE课程号 =C1AND学号 =; (SELECT学号 FROM score sc WHERE课程号 =C5) ( C) SELECT学号 FROM score sc WHERE课程号 =C1AND课程号 =C5 ( D) SELECT学号 FROM score sc WHERE课程号 =C1ORC5 55 SQL查询命令的结构是 SELECTFROMWHEREGR
21、OUP BYHAVINGORDER BY ,其中指定查询条件的短语是 ( A) SELECT ( B) FROM ( C) WHERE ( D) ORDER BY 56 SQL查询命令的结构是 SELECTFROMWHEREGROUP BYHAVINGORDER BY, 其中 HAVING必须配合使用的短语是 ( A) FROM ( B) GROUP BY ( C) WHERE ( D) ORDER BY 57 如果在 SQL查询的 SELECT短语中使用 TOP,则应该配合使用 ( A) HAVING短语 ( B) GROU BY短语 ( C) WHERE短语 ( D) ORDER BY短语
22、 58 设有学生表 student(学号 ,姓名,性别,出生日期,院系 )、课程表 course(课程号,课程名,学时 )和选课表 score(学号,课程号,成绩 ),查询 “计算机系 ”学生的学号、姓名、学生所选课程的课程名和成绩,正确的命令是 ( A) SELECT s学号,姓名,课程名,成绩 FROM student s, score sc, course c; WHERE s学号 =SC学号, sc.课程号 =c课程号,院系 =计算机系 ( B) SELECT学号,姓名,课程名,成绩 FROM student s, score sc, collrse c; WHERE s学号 =sc学
23、号 AND sc课程号 =c课程号 AND院系 =计算机系 ( C) SELECT s学号,姓名,课程名,成绩 FROM(student S JOIN score sc; ON s学号 =sc学号 )JOIN course c ON sc课程号 =c课程号; WHERE院系 =计算机系 ( D) SELECT学号,姓名,课程名,成绩 FROM(student s JOIN score sc; ON s学号 =sc学号 )JOIN course c ON sc课程号 =c课程号; WHERE院系 =计算机系 59 设有学生表 student(学号,姓名,性别,出生日期,院系 )、课程表 cour
24、se(课程号,课程名,学时 )和选课表 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学号 AND成绩 =85 ( D) SELECT学号,姓名 FROM student s, score sc WHERE s学号 =sc学号 AND
25、 ALL成绩 =85 60 设有学生表 student(学号,姓名,性别,出生日期,院系 )、课程表 course(课程号,课程名,学时 )和选课表 score(学号,课程号,成绩 ),查询选修课程在 5门以上 (含 5门 )的学生的学号、姓名和平均成绩,并按平均成绩降序排序,正确的命令是 ( A) SELECT s学号,姓名,平均成绩 FROM student s, score sc WHERE s学号 =sc学号 ; GROUP BY s学号 HAVING COUNT(*)=5 ORDER BY平均成绩 DESC ( B) SELECT学号,姓名, AVG(成绩 )FROM student
26、 s, score sc; WHERE s学号 =sc学号 AND COUNT(*)=5 GROUP 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(成绩 )平均成绩 FROM student s, score sc; WHERE s学号 =sc学号: GROUP BY s学号 HAVING COUNT(*)=5
27、 ORDER BY 3 DESC 61 查询 2009年被借过书的图书编号和借书日期,正确的 SQL语句是 ( A) SELECT图书编号,借书日期 FROM借阅 WHERE借书日期 =2009 ( B) SELECT图书编号,借书日期 FROM借阅 WHERE year(借书日期 )=2009 ( C) SELECT图书编号,借书日期 FROM借阅 WHERE借书日期 =year(2009) ( D) SELECT图书编号,借书日期 FROM借阅 WHERE year(借书日期 )=year(2009) 62 设有读者 (借书证号,单位,姓名 ,职称 )和借阅 (借书证号 ,图书编号,借书日
28、期,还书日期 )表,查询所有 “工程师 ”读者借阅过的图书编号,正确的 SQL语句是 ( A) SELECT图书编号 FROM读者,借阅 WHERE职称 =工程师 ( B) SELECT图书编号 FROM借阅 WHERE图书编号 =; (SELECT图书编号 FROM借阅 WHERE职称 =工程师 ) ( C) SELECT图书编号 FROM借阅 WHERE借书证号 IN; (SELECT借书证号 FROM读者 WHERE职称 =工程师 ) ( D) SELECT图书编号 FROM读者,图书 WHERE职称 =工程师 63 设有订单表 order(其中包含字段:订单号,客户号,职员号,签订日期
29、,金额 ),删除 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 81 在 SQL语句中,插入一条新记录采用的命令是 ( A) INSERT ( B) ADD ( C) UPDATE ( D) CREATE 82 使用 SQL语句将学生表 S中年龄 (AGE)大于 30岁的记录删除,正确的命令是 ( A) DELETE FOR AGE
30、30 ( B) DELETE FROM S WHERE AGE30 ( C) DELETE S FOR AGE30 ( D) DELETE S WHERE AGE30 83 在 SQL语句中,删除一条记录采用的命令是 ( A) INSERT ( B) DELETE ( C) UPDATE ( D) DROP 84 向 student表插入一条新记录的正确 SQL语句是 ( A) APPEND INTO student VALUES(0401, 王芳 , 女 , 18) ( B) APPEND student VALUES(0401, 王芳 , 女 , 18) ( C) INSERT INTO
31、student VALUES(0401, 王芳 , 女 , 18) ( D) INSERT student VALUES(0401, 王芳 , 女 , 18) 85 将 “万真秀 ”的工资增加 200元 SQL语句是 ( A) REPLACE教师 WITH工资 =工资 +200 WHERE姓名 =万真秀 ( B) UPDATE教师 SET工资: 200 WHERE姓名 =万真秀 ( C) UPDATE教师工资 WITH工资 +200 WHERE姓名 =万真秀 ( D) UPDATE教师 SET工资 =工资 +200 WHERE姓名 =万真秀 86 插入一条记录到表结构为 (职工号,姓名,工资
32、)的表 Employee中,正确的 SQL命令是 ( A) INSERT TO Employee VALUES(19620426, 李平 , 8000) ( B) INSERT INTO Employee VALUES(19620426, 李平 “, 8000) ( C) INSERT INTO Employee RECORD(19620426, 李平 , 8000) ( D) INSERT TO Employee RECORD(19620426, 李平 “,8000) 87 将表结构为 (职工号,姓名,工资 )的表 Employee中所有职工的工资增加 20,正确的 SQL命令是 ( A)
33、CHANGE Employee SET工资 =工资 *1 2 ( B) CHANGE Employee SET工资 WITH工资 *1.2 ( C) UPDATE Employee SET工资 =工资 *1 2 ( D) UPDATE Employee SET工资 WITH工资宰 1 2 88 删除 Employee表中职工号为 “19620426”的记录,正确的 SQL语句是 ( A) DELETE FROM Employee WHILE职工号 =19620426 ( B) DELETE FOR Employee WHERE职工号 =19620426 ( C) DELETE FOR Empl
34、oyee WHILE职工号 =19620426 ( D) DELETE FROM Employee WHERE职工号 =19620426 89 将 Employee表中职工号为 “19620426”的记录中 “单位号 ”修改为 “003”正确的SQL语句是 ( A) UPDATE Employee SET单位号 =003WHERE职工号 IS19620426 ( B) UPDATE Employee WHERE职工号 IS19620426SET单位号 =003 ( C) UPDATE Employee SET单位号 =003WHERE职工号 =19620426 ( D) UPDATE Employee单位号 WITH003WHERE职工号 =19620426
copyright@ 2008-2019 麦多课文库(www.mydoc123.com)网站版权所有
备案/许可证编号:苏ICP备17064731号-1