ImageVerifierCode 换一换
格式:DOC , 页数:18 ,大小:57.50KB ,
资源ID:500612      下载积分:2000 积分
快捷下载
登录下载
邮箱/手机:
温馨提示:
如需开发票,请勿充值!快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。
如填写123,账号就是123,密码也是123。
特别说明:
请自助下载,系统不会自动发送文件的哦; 如果您已付费,想二次下载,请登录后访问:我的下载记录
支付方式: 支付宝扫码支付 微信扫码支付   
注意:如需开发票,请勿充值!
验证码:   换一换

加入VIP,免费下载
 

温馨提示:由于个人手机设置不同,如果发现不能下载,请复制以下地址【http://www.mydoc123.com/d-500612.html】到电脑端继续下载(重复下载不扣费)。

已注册用户请登录:
账号:
密码:
验证码:   换一换
  忘记密码?
三方登录: 微信登录  

下载须知

1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。
2: 试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。
3: 文件的所有权益归上传用户所有。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 本站仅提供交流平台,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

版权提示 | 免责声明

本文([计算机类试卷]国家二级VF机试(关系数据库标准语言SQL)模拟试卷16及答案与解析.doc)为本站会员(registerpick115)主动上传,麦多课文库仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知麦多课文库(发送邮件至master@mydoc123.com或直接QQ联系客服),我们立即给予删除!

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

1、国家二级 VF机试(关系数据库标准语言 SQL)模拟试卷 16及答案与解析 一、选择题 1 SQL的 SELECT语句中, “HAVING”用来筛选满足条件的 ( A)列 ( B)行 ( C)关系 ( D)分组 2 在 Visual FoxPro中,假设教师表 T(教师号,姓名,性别,职称,研究生导师 )中,性别是 C型字段,研究生导师是 L型字段。若要查询 “是研究生导师的女老师 ”信息,那么 SQL语句 “SELECT*FROM T WHERE逻辑表达式 ”中的逻辑表达式应是 ( A)研究生导师 AND 性别 =“女 “ ( B)研究生导师 OR 性别 =“女 “ ( C)性别 =“女 “

2、 AND 研究生导师 = F ( D)研究生导师 = T OR 性别 =女 3 查询学生选修课程成绩小于 60分的学号,正确的 SQL语句是 ( A) SELECT DISTINCT 学号 FROM SC WHERE“成绩 “ 60 ( B) SELECT DISTINCT 学号 FROM SC WHERE 成绩 “60“ ( C) SELECT DISTINCT 学号 FROM SC WHERE 成绩 60 ( D) SELECT DISTINCT“学 号 “FROM SC WHERE“成绩 “ 60 4 查询学生表 S的全部记录并存储于临时表文件 one中的 SQL命令是 ( A) SEL

3、ECT*FROM 学生表 INTO CURSOR one ( B) SELECT*FROM 学生表 TO CURSOR one ( C) SELECT*FROM 学生表 INTO CURSOR DBF one ( D) SELECT(FROM 学生表 TO CURSOR DBF one 5 查询成绩在 70分至 85分之间学生的学号、课程号和成绩,正确的 SQL语句是 ( A) SELECT 学号,课程号,成绩 FROM SC WHERE成绩 BETWEEN 70 AND 85 ( B) SELECT 学号,课程号,成绩 FROM SC WHERE成绩 =70 OR成绩 =85 ( C) SE

4、LECT 学号,课程号,成绩 FROM SC WHERE成绩 =70 OR =85 ( D) SELECT 学号,课程号,成绩 FROM SC WHERE成绩 =70 AND =85 6 查询有选课记录,但没有考试成绩的学生的学号和课程号,正确的 SQL语句是 ( A) SELECT 学号,课程号 FROM SC WHERE 成绩 =“ ( B) SELECT 学号,课程号 FROM SC WHERE 成绩 =NULL ( C) SELECT 学号,课程号 FROM SC WHERE 成绩 IS NULL ( D) SELECT 学号,课程号 FROM SC WHERE 成绩 7 查询选修 C

5、2课程号的学生姓名,下列 SQL语句中错误是 ( A) SELECT 姓名 FROM S WHERE EXISTS (SELECT*FROM SC WHERE学号 =S学号 AND课程号 =C2) ( B) SELECT 姓名 FROM S WHERE 学号 IN (SELECT 学号 FROM SC WHERE 课程号 =C2) ( C) SELECT 姓名 FROM S JOIN SC ON S学号 =SC学号 WHERE课程号 =C2 ( D) SELECT 姓名 FROM S WHERE 学号 = (SELECT 学号 FROM SC WHERE 课程号 =C2) 8 在 SQL SE

6、LECT语句中与 INTO TABLE等价的短语是 ( A) INTO DBF ( B) TO TABLE ( C) INTO FORM ( D) INTO FILE 9 若 SQL语句中的 ORDER BY短语中指定了多个字段,则 ( A)依次按自右至左的字段顺序排序 ( B)只按第一个字段排序 ( C)依次按自左至右的字段顺序排序 ( D)无法排序 10 与 “SELECT*FROM 教师表 INTO DBF A”等价的语句是 ( A) SELECT*FROM 教师表 TO DBF A ( B) SELECT*FROM 教师表 TO TABLE A ( C) SELECT*FROM 教师表

7、 INTO TABLE A ( D) SELECT*FROM 教师表 INTO A 11 与 “SELECT*FROM 教师表 INTO DBF A”等价的语句是 ( A) SELECT*FROM 教师表 TO DBF A ( B) SELECT*FROM 教师表 TO TABLE A ( C) SELECT*FROM 教师表 INTO TABLE A ( D) SELECT*FROM 教师表 INTO A 12 “教师表 ”中有 “职工号 ”、 “姓名 ”、 “工龄 ”和 “系号 ”等字段, “学院表 ”中有 “系名 ”和 “系号 ”等字段,计算 “计算机 ”系教师总数的命令是 ( A) S

8、ELECT COUNT(*)FROM 教师表 INNER JOIN 学院表; ON 教师表系号 =学院表系号 WHERE 系名 =“计算机 “ ( B) SELECT COUNT(*)FROM 教师表 INNER JOIN 学院表; ON 教师表系号 =学院表系号 ORDER BY 教师表系号; HAVING 学院表系名 =“计算机 “ ( C) SELECT SUM(*)FROM 教师表 INNER JOIN 学院表; ON 教师表系号 =学院表系号 GROUP BY 教师表系号; HAVING 学院表系名 =“计算机 “ ( D) SELECT SUM(*)FROM 教师表 INNER J

9、OIN 学院表; ON 教师表系号 =学院表系号 ORDER BY 教师表系号; HAVING 学院表系名 =“计算机 “ 13 “教师表 ”中有 “职工号 ”、 “姓名 ”、 “工龄 ”和 “系号 ”等字段, “学院表 ”中有 “系名 ”和 “系号 ”等字段,求教师总数最多的系的教师人数,正确的命令序列是 ( A) SELECT 教师表系号, COUNT(*)AS 人数 FROM 教师表,学院表; GROUP BY 教师表系号 INTO DBF TEMP SELECT MAX(人数 )FROM TEMP ( B) SELECT 教师表系号, COUNT(*)FROM 教师表,学院表; WHE

10、RE 教师表系号 =学院表系号 GROUP BY 教师表系号 INTO DBF TEMP SELECT MAX(人数 )FROM TEMP ( C) SELECT 教师表系号, COUNT(*)AS 人数 FROM教师表,学院表; WHERE 教师表系号 =学院表系号 GROUP BY 教师表系号 TO FILE TEMP SELECT MAX(人数 )FROM TEMP ( D) SELECT 教师表系号, COUNT(*)AS 人数 FROM 教师表,学院表; WHERE 教师表系号 =学院表系号 GROUP BY 教师表系号 INTO DBF TEMP SELECT MAX(人数 ) F

11、ROM TEMP 14 查询尚未最后确定订购单的有关信息的正确命令是 ( A) SELECT名称,联系人,电话号码,订单号 FROM客户,订购单 WHERE客户客户号 =订购单客户号 AND订购日期 IS NULL ( B) SELECT名称,联系人,电话号码,订单号 FROM客户,订购单 WHERE客户 客户号 =订购单客户号 AND订购日期 =NULL ( C) SELECT名称,联系人,电话号码,订单号 FROM客户,订购单 FOR客户客户号 =订购单客户号 AND订购日期 IS NULL ( D) SELECT名称,联系人,电话号码,订单号 FROM客户,订购单 FOR客户客户号 =订

12、购单客户号 AND订购日期 =NULL 15 查询订购单的数量和所有订购单平均金额的正确命令是 ( A) SELECT COUNT(DISTINCT订单号 ), AVG(数量 *单价 ) FROM产品 JOIN订购单名细 ON产品产品号 =订购单 名细产品号 ( B) SELECT COUNT(订单号 ), AVG(数量木单价 ) FROM产品 JOIN订购单名细 ON产品产品号 =订购单名细产品号 ( C) SELECT COUNT(DISTINCT订单号 ), AVG(数量 (单价 ) FROM产品,订购单名细 ON产品产品号 =订购单名细产品号 ( D) SELECT COUNT(订单号

13、 ), AVG(数量 *单价 ) FROM产品,订购单名细 ON产品产品号 =订购单名细产品号 16 查询第一作者为 “张三 ”的所有书名及出版社,正确的 SQL语句是 ( A) SELECT 书名,出版社 FROM 图书 WHERE第一作者 =张三 ( B) SELECT 书名,出版社 FROM 图书 WHERE第一作者 =“张三 “ ( C) SELECT 书名,出版社 FROM 图书 WHERE“第一作者 “=张三 ( D) SELECT 书名,出版社 FROM 图书 WHERE“第一作者 “=“张三 “ 17 查询尚未归还的图书编号和借书日期,正确的 SQL语句是 ( A) SELEC

14、T 图书编号,借书日期 FROM 借阅 WHERE 还书目期 =“ ( B) SELECT 图书编号,借书日期 FROM 借 阅 WHERE 还书日期 =NULL ( C) SELECT 图书编号,借书日期 FROM 借阅 WHERE 还书日期 IS NULL ( D) SELECT 图书编号,借书日期 FROM 借阅 WHERE 还书日期 18 查询 “读者 ”表的所有记录并存储于临时表文件 one中的 SQL语句是 ( A) SELECT*FROM读者 INTO CURSOR one ( B) SELECT*FROM读者 TO CURSOR one ( C) SELECT*FROM读者 I

15、NTO CURSOR DBF one ( D) SELECT*FROM读者 TO CURSOR DBF one 19 查询单位名称中含 “北京 ”字样的所有读者的借书证号和姓名,正确的 SQL语句是 ( A) SELECT 借书证号,姓名 FROM 读者 WHERE 单位 =“北京 “ ( B) SELECT 借书证号,姓名 FROM 读者 WHERE 单位 =“北京 *“ ( C) SELECT 借书证号,姓名 FROM 读者 WHERE 单位 LIKE“北京 *“ ( D) SELECT 借书证号,姓名 FROM 读者 WHERE 单位 LIKE“北京 “ 20 SQL语句中,能够 判断

16、“订购日期 ”字段是否为空值的表达式是 ( A)订购日期 =NULL ( B)订购日期 =EMPTY ( C)订购日期 IS NULL ( D)订购日期 IS EMPTY 21 查询在 “北京 ”和 “上海 ”区域的商店信息的正确命令是 ( A) SELECT*FROM 商店 WHERE 区域名 =北京 AND 区域名 =上海 ( B) SELECT*FROM 商店 WHERE 区域名 =北京 OR 区域名 =上海 ( C) SELECT*FROM 商店 WHERE 区域名 =北京 AND上海 ( D) SELECT*FROM 商店 WHERE 区域名 =北京 OR上海 22 查询商品单价在

17、10到 50之间、并且日销售数量高于 20的商品名、单价、销售日期和销售数量,查询结果按单价降序。正确命令是 ( A) SELECT 商品名,单价,销售日期,销售数量 FROM 商品 JOIN 销售 WHERE(单价 BETWEEN 10 AND 50)AND 销售数量 20 ORDER BY 单价 DESC ( B) SELECT 商品名,单价,销售日期,销售数量 FROM 商品 JOIN销售 WHERE(单价 BETWEEN 10AND 50)AND销售数量 20 ORDE RBY 单价 ( C) SELECT 商品名,单价,销售日期,销售数量 FROM 商品,销售 WHERE(单价 BE

18、TWEEN 10 AND 50)AND销售数量 20 ON商品商品号 =销售商品号 ORDER BY单价 ( D) SELECT 商品名,单价,销售日期,销售数量 FROM 商品,销售 WHERE(单价 BETWEEN 10 AND 50)AND销售数量 20 AND 商品商品号 =销售商品号 ORDER BY 单价 DESC 23 查询销售金 额合计超过 20000的商店,查询结果包括商店名和销售金额合计。正确命令是 ( A) SELECT 商店名, SUM(销售数量 *单价 )AS 销售金额合计 FROM 商店,商品,销售 WHERE 销售金额合计 20000 ( B) SELECT 商店

19、名, SUM(销售数量 *单价 )AS销售金额合计 20000 FROM商店,商品,销售 WHERE商品商品号 =销售商品号 AND商店商店号 =销售商店号 ( C) SELECT商店名, SUM(销售数量 *单价 )AS销售金额合计 FROM商店,商品,销售 WHERE商品商品号 =销售商品号 AND商店商店号 =销售商店号 AND SUM(销售数量木单价 ) 20000 GROUP BY商店名 ( D) SELECT 商店名, SUM(销售数量枣单价 )AS 销售金额合计 FROM 商店,商品,销售 WHERE 商品商品号 =销售商品号 AND 商店商店号 =销售商店号 GROUP BY

20、商店名 HAVING SUM(销售数量 *单价 ) 20000 24 设有学生表 student(学号,姓名,性别,出生日期,院系 )、课程表 course(课程号,课程名,学时 )和选课表 score(学号, 课程号,成绩 ),查询同时选修课程号为C1和 C5课程的学生的学号,正确的命令是 ( A) SELECT学号 FROM score sc WHERE课程号 =C1AND 学号 IN; (SELECT 学号 FROM score sc WHERE 课程号 =C5) ( B) SELECT 学号 FROM score sc WHERE 课程号 =C1AND学号 =; (SELECT 学号

21、FROM score sc WHERE 课程号 =C5) ( C) SELECT 学号 FROM score sc WHERE 课程号 =C1AND 课程号 =C5 ( D) SELECT 学号 FROM score sc WHERE 课程号 =C1ORC5 25 SQL查询命令的结构是 SELECT.FROM.WHERE.GROUP BY.HAVING.ORDER BY.,其中指定查询条件的短语是 ( A) SELECT ( B) FROM ( C) WHERE ( D) ORDERBY 26 SQL查询命令的结构是 SELECT.FROM.WHERE.GROUP BY.HAVING.ORD

22、ER BY.,其中 HAVING必须配合使用的短语是 ( A) FROM ( B) GROUP BY ( C) WHERE ( D) ORDER BY 27 如果在 SQL查询的 SELECT短语中使用 TOP,则应该配合使用 ( A) HAVING短语 ( B) GROU BY短语 ( C) WHERE短语 ( D) ORDER BY短语 28 设有学生表 student(学号,姓名,性别,出生日期,院系 )、课程表 course(课程号,课程名,学时 )和选课表 score(学号,课程号,成绩 ),查询 “计算机系 ”学生的学号、姓名、学生所选课程的课程名和成绩,正确的命令是 ( A) S

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

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

25、CT*FROM score sc; WHERE sc学号 =s学号 AND成绩 85) ( B) 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 ALL 成绩 =85 30 设有学生表 stu

26、dent(学号,姓名,性别 ,出生日期,院系 )、课程表 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 s, score sc; WHERE s学

27、号 =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 ORDER BY 3 DESC

28、 国家二级 VF机试(关系数据库标准语言 SQL)模拟试卷 16答案与解析 一、选择题 1 【正确答案】 D 【试题解析】 本题考查的是 “HAVING”短语的含义。在 SQL的 SELECT语句中, GROUP BY分组字段 1 ,分组字段 2HAVING 分组限定条件 ,可以按一列或多列分组,还可以使用 HAVING进一步限定分组的条件。 HAVING子句总是跟在 GROUP BY子句之后,不可 以单独使用。 【知识模块】 关系数据库标准语言 SQL 2 【正确答案】 A 【试题解析】 根据题意,查询应该同时满足两个条件,即 “研究生导师 ”和 “女老师 ”,两个条件应该用 AND连接,故

29、选项 B)和选项 C)错误;由于 “研究生导师 ”字段是逻辑型,对应表达式应写为 “研究生导师 = T ”或者 “研究生导师 ”。 【知识模块】 关系数据库标准语言 SQL 3 【正确答案】 C 【试题解析】 查询条件 “课程成绩小于 60分 ”对应的条件表达式应该书写为 “成绩 60”。 【知识模块】 关系数据库 标准语言 SQL 4 【正确答案】 A 【试题解析】 将查询结果保存在临时表中应使用短语 INTO CURSOR 表名。 【知识模块】 关系数据库标准语言 SQL 5 【正确答案】 A 【试题解析】 如果查询条件的值是在什么范围之内,可以使用BETWEENAND 运算。 【知识模块

30、】 关系数据库标准语言 SQL 6 【正确答案】 C 【试题解析】 查询空值时要使用 IS NULL,而 =NULL是无效的,因为空值不是一个确定的值,所以不能用 “=”这样的运算符进行比较。 【知识模块】 关系数据库标准语言 SQL 7 【正确答案】 D 【试题解析】 选项 A)中,使用 EXISTS谓词来检查子查询中是否有结果返回,它的查询过程是:首先在外查询中,从 S表中取出第一条记录,再在内查询中,针对该记录,在 SC表中逐条记录判断是否存在符合 where条件 (即 “选修 C2课程号的学生 ”)的记录,如果存在,则从外查询的 S表中查找出该记录对应的 “姓名 ”值;然后依次类推,从

31、 S表中取出第二条记录,在内查询中与 SC表中的所有记录进行比较,直到将 S表中的所有记录都处理完毕。选项 B)是嵌套查询, 先在内查询中从 SC表中获得选修了 C2课程号的学生的 “学号 ”,再在外查询中从 S表中查找出这些 “学号 ”对应学生的 “姓名 ”,由于选修了 C2课程号的学生可能不止一个,因此在内查询中获得的 “学号 ”是一个集合,因此应该使用运算符 IN。 选项 C)是联接查询,将 S表和 SC表以 “学号 ”字段相等为条件进行联接,查找出选修了 C2课程号的学生。 【知识模块】 关系数据库标准语言 SQL 8 【正确答案】 A 【试题解析】 SQL SELECT语句中 INT

32、O TABLE短语和 INTO DBF短语都可用来定义将查询结果存 放到永久表中。另外, INTO ARRAY将查询结果存放到数组, INTO CURSOR将查询结果存放到临时表, TO FILE将查询结果存放到文本文件中。 【知识模块】 关系数据库标准语言 SQL 9 【正确答案】 C 【试题解析】 通过在 SELECT语句中加入 ORDER BY可将查询结果排序,可以按升序和降序排序,命令格式如下: ORDER BY排序字段 1 ASCIDESC,排序字段 2ASCIDESC 。 ASC表示按升序排序, DESC表示按降序排序,可以按一列或多列排序,升序是默认 的排列方式。如果短语中指定多

33、个字段,则依次按自左向右的顺序进行排序。 【知识模块】 关系数据库标准语言 SQL 10 【正确答案】 C 【试题解析】 本题考查查询结果的去向。若在 SELECT语句中使用 INTO DBF TABLE表名,则可以将查询的结果存放到表中,该表是自由表。 【知识模块】 关系数据库标准语言 SQL 11 【正确答案】 C 【试题解析】 使用短语 INTODBF TABLE TableName可以将查询结果存放到永久表中 (dbf文件 )。生成的表文件是一个自由 表。所以与 “SELECT*FROM教师表 INTO DBF A”等价的是 “SEIECT*FROM教师表 INTO TABLEA”。

34、【知识模块】 关系数据库标准语言 SQL 12 【正确答案】 A 【试题解析】 由于题意中要求计算系名为 “计算机 ”的教师总数,所以 SOL语句的 WHERE子句应该为 WHERE系名 =“计算机 ”,所以正确的是选项 A)。 【知识模块】 关系数据库标准语言 SQL 13 【正确答案】 D 【试题解析】 由于 “教师表 ”与 “学院表 ”是通过 “系号 ”进行关系的连接,而选项 A)没有 WHERE子句,所以选项 A)是错误的。选项 B)中,由于接下来的 SQL语句“SELECT MAX(人数 )FROM TEMP”的字段名称为 “人数 ”,而第一条 SOL语句没有对查询的结果进行重命名,

35、会产生错误。选项 C)中的 SQL语句使用短语 INTO FILEFileName ADDITIVE可以将查询结果存放到文本文件中, FileName是文件名,默认扩展名是 txt,接下来的 SOL语句 “SEI ECT MAX(人数 )FROM TEMP”会产生错误。 【知识模块】 关系数据库标准语言 SQL 14 【正确答案】 A 【试题解析】 在 SQL SELECT查询语句中,用 where说明查询条件。在表中尚未确定的值用 NULL值表示,而 SQL中查询空值时要用 ISNULL,不能用 “=”。 【知识模块】 关系数据库标准语言 SQL 15 【正确答案】 A 【试题解析】 VFP

36、的 SELECT语句中用于内联接查询的语法是: SELECTFROM 表 1INNERJOIN表 2ON联接条件 where Count(、 )和 avg()都是 SQL中用于计算的检索函数,其中 Count用来计算记录个数,通常 应该使用 Distinct,除非对关系中的元组个数进行计算。这个题目中要求订购单的数量,显然应该对订单号计数,但订购单明细表中的订单号是有重复的(因为一份订单上可能有多种产品 ),因此应该在 count()中使用 Distinct。 AVg函数是用来计算平均值的。产品金额 =数量木单价。 【知识模块】 关系数据库标准语言 SQL 16 【正确答案】 B 【试题解析】

37、 本题考查 SELECT语句的正确应用。要查询第一作者为 “张三 ”的所有书名及出版社,那么书名及出版社是要查询的列,查询源是图书表,条件是第一作者 为 “张三 ”。 【知识模块】 关系数据库标准语言 SQL 17 【正确答案】 C 【试题解析】 在 SQL语句中,空值查询用 IS NULL。 【知识模块】 关系数据库标准语言 SQL 18 【正确答案】 C 【试题解析】 在 SQL语句中,空值查询用 IS NULL。 【知识模块】 关系数据库标准语言 SQL 19 【正确答案】 A 【试题解析】 在 SQL语句中,将查询结果保存在临时表中应使用短语 INTO CURSOR。 【知识模块】 关

38、系数据库标准语言 SQL 20 【正确答案】 D 【试题解析】 在 SQL的 WHRER子句的条件表达式中,字符串匹配的运算符是LIKE,通配符 “ ”表示 0个或多个字符,另外还有一个通配符 “_”表示一个字符。 【知识模块】 关系数据库标准语言 SQL 21 【正确答案】 C 【试题解析】 在 SQL,语句中支持空值查询,用 IS NULL表示。 【知识模块】 关系数据库标准语言 SQL 22 【正确答案】 D 【试题解析】 可以用 JOINON 语法进行超连结查询,也可以用 WHERE直接表示数据表连接条件。 ORDER BY短语表示排序, DESC短语表示降序。 【知识模块】 关系数据

39、库标准语言 SQL 23 【正确答案】 D 【试题解析】 用 WHERE表示数据表连接条件;用 GROUP BY表示分组,HAVING总是跟在 GROUP BY之后,用来限定分组,即 HAVING是用来表示选择分组的条件。 【知识模块】 关系数据库标准语言 SQL 24 【正确答案】 A 【试题解析】 本题考查 SELECT语句中 in短语的应用。 in(),括号中是子查询,返回结果集,换句话说子查询先产生结果集,然后主 查询再去结果集里去找符合要求的字段列表,符合要求的输出,反之则不输出。在选项 A)中, IN后面的子查询查找到所有课程号 =C5的学生的学号,再在这个集合中,查询课程号 =C

40、1的学生的学号。 【知识模块】 关系数据库标准语言 SQL 25 【正确答案】 C 【试题解析】 在 SQL查询语中, WHERE是说明查询条件,即选择元组的条件。 【知识模块】 关系数据库标准语言 SQL 26 【正确答案】 B 【试题解析】 在 SQL查询中, HAVING总是跟在 GROUP BY之后,用来限定分 组条件。 【知识模块】 关系数据库标准语言 SQL 27 【正确答案】 D 【试题解析】 TOP表示排序后满足条件的前几条记录。所以需要和 ORDER BY同时使用。 【知识模块】 关系数据库标准语言 SQL 28 【正确答案】 C 【试题解析】 本题考查三个表之间的联接查询。

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

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

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