第五章结构化查询语言SQL知识题.doc

上传人:小** 文档编号:4519768 上传时间:2021-09-26 格式:DOC 页数:16 大小:180.50KB
返回 下载 相关 举报
第五章结构化查询语言SQL知识题.doc_第1页
第1页 / 共16页
第五章结构化查询语言SQL知识题.doc_第2页
第2页 / 共16页
点击查看更多>>
资源描述

《第五章结构化查询语言SQL知识题.doc》由会员分享,可在线阅读,更多相关《第五章结构化查询语言SQL知识题.doc(16页珍藏版)》请在taowenge.com淘文阁网|工程机械CAD图纸|机械工程制图|CAD装配图下载|SolidWorks_CaTia_CAD_UG_PROE_设计图分享下载上搜索。

1、,第五章 结构化查询语言SQL一选择题(每小题只有一个正确答案)1不属于数据定义功能的SQL语句是()。A.CREATTABLE B.CREAT CURSORC.UPDATE D.ALTER TABLE2从数据库中删除表的命令是( )。A.DROP TABLE B.ALTER TABLEC.DELETETABLE D.USE3建立表结构的SQL命令是( )。A.CREATCURSOR B.CREAT TABLEC.CREAT INDEX D.CREAT VIEW4DELETE FROM S WHERE 年龄60语句的功能是( )。A.从S表中彻底删除年龄大于60岁的记录B.S表中年龄大于60岁

2、的记录被加上删除标记C.删除S表D.删除S表的年龄列5UPDATE-SQL语句的功能是( )。A.属于数据定义功能B.属于数据查询功能C.可以修改表中某些列的属性D.可以修改表中某些列的内容6SELECT-SQL语句是( )。A.选择工作区语句 B.数据查询语句C.选择标准语句D.数据修改语句7关于INSERT-SQL语句描述正确的是( )。A.可以向表中插入若干条记录B.在表中任何位置插入一条记录C.在表尾插入一条记录D.在表头插入一条记录8.使用SQL语句进行分组检索时,为了去掉不满足条件的分组,应当( )。A. 使用WHERE子句B. 在GROUP BY后面使用HAVING子句C. 先使

3、用WHERE子句,再使用HAVING子句D. 先使用HAVING子句,再使用WHERE子句 9.在Visual FoxPro中,使用SQL命令将学生表STUDENT中的学生年龄AGE字段的值增加1岁,应该使用的命令是( )。A. REPLACE AGE WITH AGE+1B. UPDATE STUDENT AGE WITH AGE+1C. UPDATE SET AGE WITH AGE+1D. UPDATE STUDENT SET AGE = AGE+110在Visual FoxPro中,以下关于删除记录的描述中,正确的是( )。ASQL的DELETE命令在删除数据库表中的记录之前,不需要用

4、USE命令打开表BSQL的DELETE命令和传统Visual FoxPro的DELETE命令在删除数据库表中的记录之前,都需要用USE命令打开表CSQL的DELETE命令可以物理的删除数据库表中的记录,而传统Visual FoxPro的DELETE命令只能逻辑删除数据库表中的记录D传统Visual FoxPro的DELETE命令在删除数据库表中的记录之前不需要用USE命令打开表11求每个学生的平均成绩的SQL语句是( )。A.SELECT 学生姓名,avg(成绩) FROM student GROUP BY 成绩B.SELECT 学生姓名,avg(成绩) FROM student ORDER

5、BY 成绩C.SELECT 学生姓名,avg(成绩) FROM student ORDER BY 学生姓名D.SELECT 学生姓名,avg(成绩) FROM student GROUP BY 学生姓名12.若要在“学生”和“课程”表中查找学号为123号学生的成绩,下列语句正确的是( )。ASELECT 学号,姓名,成绩 FROM 学生 JOIN 课程; WHERE 学号=123B. SELECT 学号,姓名,成绩 FROM 学生 JOIN 课程; WHERE 学号=123; ON 学生.学号=课程.学号C. SELECT 学号,姓名,成绩 FROM 学生 JOIN 课程; ON 学生.学号=

6、课程.学号;WHERE 学号=123D. SELECT 学号,姓名,成绩 FROM 学生 JOIN 课程; WHERE 学生.学号=课程.学号13.执行如下SQL语句 SELECT DISTINCT 成绩 FROM 学生; WHERE 成绩=(SELECT min(成绩) FROM 学生) INTO DBF student后,表student中的记录个数是( )。A. 1 B.2 C.3 D.414.若需统计“选课”表中已经选修了课程的学生人数,下面语句正确的是( )。 A.SELECT COUNT(DISTINCT 学生号) FROM 选课 B.SELECT COUNT(学生号) FROM

7、选课 C.SELECT COUNT(*) FROM 选课 D.SELECT COUNT(DISTINCT *) FROM 选课15.“学生”表结构为(学号 N(3),姓名 C(5),性别 C(1),年龄 N(3)),学号为主索引,若用SQL命令INSERT插入一个记录,下面语句正确的是( )。 A.INSERT INTO 学生(”123”,”步青云”,”女”,”20”) B.INSERT INTO 学生(NULL,”步青云”,”女”,”20”) C.INSERT INTO 学生(123,”步青云”,NULL,20)D.INSERT INTO 学生(123,步青云,女,20)16查询订购单号(字

8、符型,长度为4)尾字符是1的错误命令是( )。A.SELECT * FROM 订单 WHERE SUBSTR(订购单号,4)=1B.SELECT * FROM 订单 WHERE SUBSTR(订购单号,4,1)=1C.SELECT * FROM 订单 WHERE 1$订购单号D.SELECT * FROM 订单 WHERE RIGHT(订购单号,1)=117在SQL语句中,与表达式工资 BETWEEN 1210 AND 1240功能相同的表达式是( )。A. 工资=1210 AND 工资1210 AND 工资1240C. 工资1240D. 工资=1210 OR 工资=124018.在SQL语句

9、中,与表达式仓库号 NOT IN(wh1,wh2)功能相同的表达式是( )。A. 仓库号=wh1 AND 仓库号=wh2B. 仓库号!=wh1 OR 仓库号# wh2C. 仓库号wh1 OR 仓库号!=wh2D. 仓库号!=wh1 AND 仓库号!=wh219.查询设计器中联接选项卡对应的SQL短语是( )。A.WHERE B.JOIN C.SET D.ORDER BY20.在SQL SELECT语句中用于实现关系的选择运算的短语是( )。A.FOR B.WHILE C.WHERE D.CONDITION21.使用SQL语句将学生表S中年龄(AGE)大于30岁的记录删除,正确的命令是( )。A

10、 DELETE FOR AGE 30 B DELETE FROM S WHERE AGE 30C DELETE S FOR AGE 30 D DELETE S WHERE AGE 3022.使用SQL语句向学生表S(SNO,SN,AGE,SEX)中添加一条新记录,字段学号(SNO)、姓名(SN)、性别(SEX)、年龄(AGE)的值分别为0401、王芳、女、18,正确命令是( )。A.APPEND INTO S(SNO,SN,SEX,AGE) VALUES(0401,王芳,女,18)BAPPEND S VALUES(0401,王芳,18,女)CINSERT INTO S(SNO,SN,SEX,A

11、GE)VALUES(0401,王芳,女,18)DINSERT S VALUES(0401,王芳,18,女)23在Visual FoxPro中,以下有关SQL的SELECT语句的叙述中,错误的是( )。ASELECT子句中可以包含表中的列和表达式BSELECT子句中可以使用别名C. SELECT子句规定了结果集中的列顺序DSELECT子句中列的顺序应该与表中列的顺序一致24下列关于SQL中HAVING子句的描述,错误的是( )。AHAVING子句必须与GROUP BY子句同时使用BHAVING子句与GROUP BY子句无关C使用WHERE子句的同时可以使用HAVING子句D使用HAVING子句的

12、作用是限定分组的条件25.对于视图的使用,下列说法错误的是( )。A.利用视图可以更新数据表记录B.利用视图可以实现多表查询C.视图可以产生磁盘文件D.视图可以作为查询数据源26.下面关于查询的描述正确的是( )。A.可以使用CREATE VIEW 打开查询设计器B.使用查询设计器可以生成所有的SQL查询语句C.使用查询设计器生成的SQL语句存盘后将存放在名为.QPR的文件中D.使用DO语句执行查询时,可以不带扩展名27.以下关于查询的描述正确的是( )。A.不能根据自由表建立查询B.只能根据自由表建立查询C.只能根据数据库表建立查询D.可以根据数据库表和自由表建立查询28.在当前盘当前目录下

13、删除表student的命令是( )。A.DROP student B.DELETE TABLE studentC.DROP TABLE studentD.DELETE student29.有如下SQL语句: SELECT max(成绩) INTO ARRAY a FROM student执行该语句后( )。A. a1的内容为max(成绩)B. an的内容为max(成绩)C. a0的内容为max(成绩)D. a的所有内容为max(成绩)30.在SQL的CREATE TABLE 命令中用于定义满足实体完整性的主索引的短语是( )。ADEFAULT B.UNIQUE CCHECK D.PRIMARY

14、 KEY31.SQL的DELETE命令是指( )。A从表中删除行B从表中删除列C从基本表中删除行D从基本表中删除列32.对下列命令理解正确的是( )。UPDATE 选课 SET 成绩=成绩+10A.只对当前记录更新B.对表中的记录的成绩全部更新C.删除当前记录D.删除全部表中的成绩值33.“学生”表结构为(学号 N(3),姓名 C(3),性别 C(1),年龄 N(2),学号为主索引,若用SQL命令检索所有比“张洋”年龄大的同学,下列语句正确的是( )。ASELECT * FROM 学生; WHERE 年龄(SELECT 年龄 FROM 学生;WHERE 姓名=”张洋”)B. SELECT *

15、FROM 学生; WHERE 姓名=”张洋”C. SELECT * FROM 学生; WHERE 年龄(SELECT 年龄;WHERE 姓名=”张洋”)D. SELECT * FROM 学生; WHERE 年龄”张洋”34.查询选修“K1”的学生中成绩最高的学生的学号,下列语句正确的是( )。ASELECT 学号 FROM 选课; WHERE 课程号=”K1” AND 成绩=; (SELECT 成绩 FROM 选课; WHERE 课程号=”K1”)B. SELECT 学号 FROM 选课; WHERE 课程号=”K1” AND 成绩 IN; (SELECT 成绩 FROM 选课; WHERE

16、课程号=”K1”)C. SELECT 学号 FROM 选课; WHERE 课程号=”K1” AND 成绩=ALL; (SELECT 成绩 FROM 选课; WHERE 课程号=”K1”)D. SELECT 学号 FROM 选课; WHERE 课程号=”K1” AND 成绩 IN; (SELECT 成绩 FROM 选课)第3536题使用如下三个数据库表:学生表:S(学号,姓名,性别,出生日期,院系)课程表:C(课程号,课程名,学时)选课成绩表:SC(学号,课程号,成绩)在上述表中,出生日期数据类型为日期型,学时和成绩为数值型,其他均为字符型。35. 用SQL命令查询选修的每门课程的成绩都高于或等

17、于85分的学生的学号和姓名,正确的命令是( )。A SELECT 学号,姓名 FROM S WHERE NOT EXISTS;(SELECT * FROM SC WHERE SC.学号 = S.学号 AND成绩 = 85)C SELECT 学号,姓名 FROM S,SCWHERE S.学号= SC.学号 AND成绩 = 85D SELECT 学号,姓名 FROM S,SCWHERE S.学号 = SC.学号 AND ALL成绩 = 8536用SQL语言检索选修课程在5门以上(含5门)的学生的学号、姓名和平均成绩,并按平均成绩降序排列,正确的命令是( )。ASELECT S.学号,姓名 平均成绩

18、 FROM S,SC;WHERE S.学号 = SC.学号;GROUP BY S.学号 HAVING COUNT(*)=5 ORDER BY平均成绩 DESCB SELECT 学号,姓名,AVG(成绩) FROM S,SC;WHERE S.学号 = SC.学号 AND COUNT(*)=5;GROUP BY 学号 ORDER BY 3 DESCCSELECT S.学号,姓名 AVG(成绩) 平均成绩FROM S,SC;WHERE S.学号 = SC.学号 AND COUNT(*)=5;GROUP BY S.学号 ORDER BY平均成绩 DESCDSELECT S.学号,姓名 AVG(成绩)

19、平均成绩 FROM S,SC;WHERE S.学号 = SC.学号;GROUP BY S.学号 HAVING COUNT(*)=5 ORDER BY 3 DESC37.如果学生表student是使用下面的SQL语句创建的( )。CREATE TABLE student (SNO C(4) PRIMARY KEY NOT NULL,;SN C(8),;SEX C(2),;AGE N(2) CHECK(AGE15 AND AGE 200 ;GROUP BY 产地 HAVING COUNT(*) = 2 ;ORDER BY 2 DESC查询结果的第一条记录的产地和提供的商品种类数是( )。A.北京,

20、1 B.上海,2C.广东,5 D.广东, 741.SQL语句SELECT 部门表.部门号,部门名称,SUM(单价*数量) ;FROM 部门表,商品表 ;WHERE部门表.部门号 = 商品表.部门号 ;GROUP BY 部门表.部门号查询结果是( )。A.各部门商品数量合计 B.各部门商品金额合计 C.所有商品金额合计 D.各部门商品金额平均值42.SQL语句SELECT 部门表.部门号,部门名称,商品号,商品名称,单价;FROM 部门表,商品表;WHERE部门表.部门号 = 商品表.部门号;ORDER BY 部门表.部门号 DESC,单价查询结果的第一条记录的商品号是( )。A.0101 B.

21、0202 C.0110 D.011243.SQL语句SELECT 部门名称 FROM 部门表 WHERE 部门号 IN ;(SELECT 部门号 FROM 商品表 WHERE 单价 BETWEEN 420 AND 1000)查询结果是( )。A.家用电器部、电话手机部 B.家用电器部、计算机部C.电话手机部、电视录摄像机部 D.家用电器部、电视录摄像机部第44-47.题使用如下三个表:学生.DBF:学号 C(8) ,姓名 C(12),性别 C(2),出生日期 D,院系 C(8)课程.DBF:课程编号 C(4) ,课程名称 C(10) , 开课院系C(8)学生成绩.DBF:学号 C(8) ,课程

22、编号 C(4) , 成绩 I44查询每门课程的最高分,要求得到的信息包括课程名称和分数。正确的命令是( )。A.SELECT 课程名称, SUM(成绩) AS 分数 FROM 课程,学生成绩 ; WHERE 课程.课程编号=学生成绩.课程编号 ; GROUP BY 课程名称B.SELECT 课程名称, MAX(成绩) 分数 FROM 课程, 学生成绩 ; WHERE 课程.课程编号=学生成绩.课程编号 ; GROUP BY 课程名称C.SELECT 课程名称, SUM(成绩) 分数 FROM 课程, 学生成绩 ; WHERE 课程.课程编号=学生成绩.课程编号 ; GROUP BY 课程.课程

23、编号D.SELECT 课程名称, MAX(成绩) AS 分数 FROM 课程, 学生成绩 ; WHERE 课程.课程编号=学生成绩.课程编号 ; GROUP BY 课程编号45.统计只有2名以下(含2名)学生选修的课程情况,统计结果中的信息包括课程名称、开课院系和选修人数,并按选课人数排序。正确的命令是( )。A. SELECT 课程名称,开课院系,COUNT(课程编号) AS 选修人数;FROM 学生成绩,课程 WHERE 课程.课程编号=学生成绩.课程编号 ;GROUP BY 学生成绩.课程编号 HAVING COUNT(*)=2;ORDER BY COUNT(课程编号)B. B.SELE

24、CT 课程名称,开课院系,COUNT(学号) 选修人数;FROM 学生成绩,课程 WHERE 课程.课程编号=学生成绩.课程编号 ;GROUP BY 学生成绩.学号 HAVING COUNT(*)=2;ORDER BY COUNT(学号)C. C.SELECT 课程名称,开课院系,COUNT(学号) AS 选修人数;FROM 学生成绩,课程 WHERE 课程.课程编号=学生成绩.课程编号 ;GROUP BY 课程名称 HAVING COUNT(学号)=2;ORDER BY 选修人数D. D.SELECT 课程名称,开课院系,COUNT(学号) AS 选修人数;FROM 学生成绩,课程 HAVI

25、NG COUNT(课程编号)3 AND AVG_金额200BSELECT 职员号 FROM 订单 GROUP BY 职员号 HAVING COUNT(*)3 AND AVG(金额)200CSELECT 职员号 FROM 订单 GROUP BY 职员号 HAVING COUNT(*)3 WHERE AVG(金额)200DSELECT 职员号 FROM 订单 GROUP BY 职员号 WHERE COUNT(*)3 AND AVG_金额20050显示2005年1月1日后签订的订单,显示订单的订单号、客户名以及签订日期。正确的SQL语句是( )。ASELECT 订单号,客户名,签订日期 FROM 订

26、单 JOIN 客户 ON 订单.客户号=客户.客户号 WHERE 签订日期2005-1-1BSELECT 订单号,客户名,签订日期 FROM 订单 JOIN 客户 WHERE 订单.客户号=客户.客户号 AND 签订日期2005-1-1CSELECT 订单号,客户名,签订日期 FROM 订单,客户 WHERE 订单.客户号=客户.客户号 AND 签订日期2005-1-1DSELECT 订单号,客户名,签订日期 FROM 订单,客户 ON 订单.客户号=客户.客户号 AND 签订日期2005-1-151显示没有签订任何订单的职员信息(职员号和姓名),正确的SQL语句是( )。ASELECT 职员

27、.职员号,姓名 FROM 职员 JOIN 订单 ON 订单.职员号=职员.职员号 GROUP BY 职员.职员号 HAVING COUNT(*)=0BSELECT 职员.职员号,姓名 FROM 职员 LEFT JOIN 订单 ON 订单.职员号=职员.职员号 GROUP BY 职员.职员号 HAVING COUNT(*)=0CSELECT 职员号,姓名 FROM 职员 WHERE 职员号 NOT IN (SELECT 职员号 FROM 订单)DSELECT 职员.职员号,姓名 FROM 职员 WHERE 职员.职员号 (SELECT 订单.职员号 FROM 订单)52有以下SQL语句:SELE

28、CT 订单号,签订日期,金额 FROM 订单,职员 WHERE 订单.职员号=职员.职员号 AND 姓名=李二与如上语句功能相同的SQL语句是( )。ASELECT 订单号,签订日期,金额 FROM 订单 WHERE EXISTS (SELECT * FROM 职员 WHERE 姓名=李二)BSELECT 订单号,签订日期,金额 FROM 订单 WHERE EXISTS (SELECT * FROM 职员 WHERE 职员号=订单.职员号 AND 姓名=李二)CSELECT 订单号,签订日期,金额 FROM 订单 WHERE IN (SELECT 职员号 FROM 职员 WHERE 姓名=李二

29、)DSELECT 订单号,签订日期,金额 FROM 订单 WHERE IN (SELECT 职员号 FROM 职员 WHERE 职员号=订单.职员号 AND 姓名=李二)53从订单表中删除客户号为“1001”的订单记录,正确的SQL语句是( )。ADROP FROM 订单 WHERE 客户号=1001BDROP FROM 订单 FOR 客户号=1001CDELETE FROM 订单 WHERE 客户号=1001DDELETE FROM 订单 FOR 客户号=100154将订单号为“0060”的订单金额改为169元,正确的SQL语句是( )。AUPDATE 订单 SET 金额=169 WHERE

30、 订单号=0060BUPDATE 订单 SET 金额 WITH 169 WHERE 订单号=0060CUPDATE FROM 订单 SET 金额=169 WHERE 订单号=0060DUPDATE FROM 订单 SET 金额 WITH 169 WHERE 订单号=0060第55-60题使用如下三个表:部门.DBF:部门号C(8),部门名C(12),负责人C(6),电话C(16)职工.DBF:部门号C(8),职工号C(10),姓名C(8),性别C(2),出生日期D工资.DBF:职工号C(10),基本工资N(8.2),津贴N(8.2),奖金N(8.2),扣除N(8.2)55查询职工实发工资的正确

31、命令是( )。A.SELECT 姓名,(基本工资+津贴+奖金-扣除)AS 实发工资 FROM 工资B.SELECT 姓名,(基本工资+津贴+奖金-扣除)AS 实发工资 FROM 工资;WHERE 职工.职工号=工资.职工号.SELECT 姓名,(基本工资+津贴+奖金-扣除)AS 实发工资; FROM 工资,职工 WHERE 职工.职工号=工资.职工号.SELECT 姓名,(基本工资+津贴+奖金-扣除)AS 实发工资; FROM 工资 JOIN 职工 WHERE 职工.职工号=工资. 职工号56. 查询1962年10月27日出生的职工信息的正确命令是()。ASELECT * FROM 职工 WH

32、ERE 出生日期=1962-10-27BSELECT * FROM 职工 WHERE 出生日期=1962-10-27CSELECT * FROM 职工 WHERE 出生日期=“1962-10-27”DSELECT * FROM 职工 WHERE 出生日期=(“1962-10-27”)57 查询每个部门年龄最长者的信息,要求得到的信息包括部门名和最长者的出生日期。正确的命令是( )ASELECT 部门名,MIN(出生日期)FROM 部门 JOIN 职工; ON 部门.部门号=职工.部门号 GROUP BY 部门名BSELECT 部门名,MAX(出生日期)FROM 部门 JOIN 职工; ON 部

33、门.部门号=职工.部门号 GROUP BY 部门名CSELECT 部门名,MIN(出生日期)FROM 部门 JOIN 职工; WHERE 部门.部门号=职工.部门号 GROUP BY 部门名DSELECT 部门名,MAX(出生日期)FROM 部门 JOIN 职工; WHERE 部门.部门号=职工.部门号 GROUP BY 部门名58查询有10名以上(含10名)职工的部门信息(部门名和职工人数),并按职工人数降序排列。正确的命令是( )。ASELECT 部门名,COUNT(职工号)AS 职工人数;FROM 部门,职工 WHERE 部门.部门号=职工.部门号;GROUP BY 部门名 HAVING

34、 COUNT(*)=10;ORDER BY COUNT(职工号)ASCBSELECT 部门名,COUNT(职工号)AS 职工人数;FROM 部门,职工 WHERE 部门.部门号=职工.部门号;GROUP BY 部门名 HAVING COUNT(*)=10;ORDER BY COUNT(职工号)DESCCSELECT 部门名,COUNT(职工号)AS 职工人数;FROM 部门,职工WHERE 部门.部门号=职工.部门号;GROUP BY 部门名 HAVING COUNT(*)=10;ORDER BY 职工人数 ASCDSELECT 部门名,COUNT(职工号)AS 职工人数;FROM 部门,职工WHERE 部门.部门号=职工.部门号;GROUP BY 部门名 HAVING COUNT(*)=10;ORDER BY 职工人数 DESC59查询所有目前年龄在35岁以上(不含35岁)的职工信息(姓名、性别和年龄),正确的命令是()。ASELECT 姓名,性别,YEAR(DATE()-YEAR(出生日期) 年龄 FROM 职工;WHERE 年龄35

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 教育专区 > 教案示例

本站为文档C TO C交易模式,本站只提供存储空间、用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。本站仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知淘文阁网,我们立即给予删除!客服QQ:136780468 微信:18945177775 电话:18904686070

工信部备案号:黑ICP备15003705号© 2020-2023 www.taowenge.com 淘文阁