关系数据库标准语言SQL练习题
更新时间:2023-11-24 19:53:01 阅读量: 教育文库 文档下载
第3章 关系数据库标准语言SQL
一.单项选择题
1.SQL语言是▁▁▁▁▁的语言,易学习。
A.过程化 B非过程化 C.格式化 D导航式 B
2.SQL语言是▁▁▁▁▁语言。
A.层次数据库 B.网络数据库 C.关系数据库 D非数据库 3.SQL语言具有▁▁▁▁▁的功能。 A.关系规范化、数据操纵、数据控制 B.数据定义、数据操纵、数据控制 C.数据定义、关系规范化、数据控制 C.数据定义、关系规范化、数据操纵
4.SQL语言的数据操纵语句包括SELECT,INSERT,UPDATE和DELETE等。其中最重要的,也是使用最频繁的语句是▁▁▁▁▁。 A.SELECT B.INSERT C.UPDATE D.DELETE 5.在关系代数运算中,五种基本运算为▁▁▁▁▁。
A.并、差、选择、投影、自然连接 B.并、差、交、选择、投影 C.并、差、选择、投影、乘积 D.并、差、交、选择、乘积 6 .SQL语言中,实现数据检索的语句是▁▁▁▁▁。
A.SELECT B.INSERT C.UPDATE D.DELETE 7.下列SQL语句中,修改表结构的是▁▁▁▁▁。
A.ALTER B.CREATE C.UPDATE D.INSERT
第8到第11题基于这样的三个表,即学生表S、课程表C和学生选课表SC,他们的结构如下: S(S#,SN,SEX,AGE,DEPT); C(C#,CN); SC(S#,C#,GRADE)
其中:S#为学号,SN为姓名,SEX为性别,AGE为年龄,DEPT为系别,C#为课程CN为课程名,GPADE为成绩。 8.检索所有比“王华”年龄大的学生姓名、年龄和性别。正确的SELECT语句是▁▁A▁▁。 A.SELECT SN,AGE,SEX
FROM S WHERE AGE>(SELECT AGE FROM S WHERE SN=“王华”) B.SELECT SN,AGE,SEX FROM S WHERE SN=“王华” C.SELECT SN,AGE,SEX
FROM S WHERE AGE>(SELECT AGE WHERE SN=“王华”) D.SELECT SN,AGE,SEX FROM S WHERE AGE>王华.AGE
9.检索选修课程“C2”的学生中成绩最高的学生的学号。正确的SELECT语句是▁▁D▁▁。 A.SELECT S# FORM SC
WHERE C#=“C2”AND GRADE>=(SELECT GRADE FORM SC WHERE C#=“C2”) B.SELECT S# FORM SC
WHERE C#=“C2”AND GRADE IN(SELECT GRADE FORM SC WHERE C#=“C2”) C.SELECT S# FORM SC
WHERE C#=“C2”AND GRADE NOT IN(SELECT GRADE FORM SC WHERE C#=“C2”)
D.SELECT S# FORM SC
WHERE C#=“C2”AND GRADE>=ALL(SELECT GRADE FORM SC WHERE C#=“C2”)
10.检索学生姓名及其所选修课程号和成绩。正确的SELECT语句是▁▁▁C▁▁。 SELECT S.SN,SC.C#,SC.GRADE
FROM S WHERE S.S#=SC.S# B.SELECT S.SN,SC.C#,SC.GRADE FROM S WHERE S.S#=SC.GRADE C.SELECT S.SN,SC.C#,SC.GRADE FROM S,SC WHERE S.S#=SC.S# D.SELECT S.SN,SC.C#,SC.GRADE FROM S.SC
11.检索选修四门以上课程的学生总成绩(不统计不及格的课程),并要求按总成绩的降序排列出来。正确的SELECT语句是▁B▁。 A.SELECT S#,SUM(GRADE)
FROM SC WHERE GRADE>=60 GROUP BY S# ORDER BY 2 DESC HAVING COUNT(*)>=4 SELECT S#,SUM(GRADE)
FROM SC WHERE GRADE>=60 GROUP BY S# HAVING COUNT(*)>=4 ORDER BY 2 DESC
SELECT S#,SUM(GRADE)
FROM SC WHERE GRADE>=60 HAVING COUNT(*)>=4 GROUP BY S# ORDER BY 2 DESC
SELECT S#,SUM(GRADE)
FROM SC WHERE GRADE>=60 ORDER BY 2 DESC GROUP BY S# HAVING COUNT(*)>=4
12.假定学生关系是S(S#,SNAME,SEX,AGE),课程关系是C(C#,CNAME,TEACHER),学生选修课关系是SC(S#,C#,GRADE)。 要查找选修“COMPUTER”课程的“女”学生姓名,将涉及到关系▁▁D▁▁。 A.S B.SC,C C.S,SC D.S,C,SC
13.如下面的数据库的表中,若职工表的主关键字是职工号,部门表的主关键字是部门号,SQL操作▁▁▁▁▁不能执行。
职工表 部门表
A.从职工表中删除行(‘025’,‘王芳’,‘03’,720) B.将行(‘005’,‘乔兴’,‘04’,750)插入到职工表中 C.将职工号为‘001’工资改为700 D.将职工号为‘038’部门号改为‘03’ B
14.若用如下的SQL语句创建一个student表: CREATE TABLE student(NO C(4) NOT NULL, NAME C(8) NOT NULL, SEX C(2), AGE N(2));
可以插入到student表中的是▁▁▁▁▁。
A.(‘1031’,‘曾华’,男,23) B.(‘1031’,‘曾华’,NULL,NULL) C.(NULL,‘曾华’,男,23) D.(‘1031,NULL,男,23)
职工号 职工名 001 005 025 038 李红 刘军 王芳 张强 部门号 工资 01 0l 03 02 580 670 720 650 部门号 部门名 0l 02 03 04 人事处 财务处 教务处 学生处 主任 高平 蒋华 许红 杜琼
B
二、填空题
1.SQL是▁▁▁▁▁▁▁▁▁▁。 结构化查询语言
2.SQL语言的数据定义功能包括▁▁▁▁▁▁▁、▁▁▁▁▁▁▁、▁▁▁▁▁▁▁和▁▁▁▁▁▁▁。 定义数据库 定义基本表 定义视图 定义索引
3.视图是一个虚表,它是从▁▁▁中导出的表。在数据库中,只存放视图的▁▁▁▁▁,不存视图的▁▁▁▁▁▁▁▁▁▁。 一个或几个基本表 定义 视图对应的数据 4.设有如下关系表R、S和T: R(BH,XM,XB,DWH) S(DWH,DW) T(BH,XM,XB,DWH)
实现R∪T的语句是▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁。 实现R∪T的语句是▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁。 实现R∪T的语句是▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁。 实现R∪T的语句是▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁。 实现R∪T的语句是▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁。 实现R∪T的语句是▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁。 SELECT * FROM R UNION SELECT * FROM T SELECT * FROM R WHERE DWH=‘100’ SELECT XM,XB FROM R
SELECT X,DWH FROM R WHERE XB=“女”
SELECT R.BH,R.XM,R.XB,R.DWH,S.DWH,S.DWM FROM R,S WHERE R.DWH=S.DWH SELECT R.XM,R.XB,S.DWM
FROM R,S WHERE R.DWH=S.DWH AND R.XB=“男” 5.设有如下关系表R:
R(NO,NAME,SEX,AGE,CLASS) 主关键字的NO。
其中NO为学号,NAME为姓名,SEX为性别,AGE为年龄,CLASS为班号。写出实现下列的SQL语句。 插入一个记录(25,“李明”“男”,21,“95031”); 插入“95031”班号为30、姓名为“郑和”的学生记录; 将学号为10的学生姓名改为“王华”; 将所有“95101班号改为“95091”; 删除学号为20的学生记录; 删除姓“王”的学生记录;
INSERT INTO R VALUES(25,“李明”,“男”,21,“95031”) INSERT INTO R(NO,NAME,CLASS)VALUES(30,“郑和”,“95031”) UPDATE R SET NAME=“王华” WHERE NO=10
UPDATE R SET CLASS=“95091” WHERE CLASS=“95101” DELETE FROM R WHERE NO=20
DELETE FROM R WHERE NAME LIKE “王%” 习题3
1.叙述SQL语言支持的三级逻辑结构。
答:SQL语言支持的三级逻辑结构如图1所示.
在概念层,对应概念模式的概念记录型的基本表。基本表是这样的一种表,它本身实际存在,在Visual Foxpro中每个表在存储中可用一具存储文件来表示(在ORACLE中,多个表存储在一个文件夹中。一个基本表就是一个关系,它不是由其人表导出的表。基本表是使用CDEATE TABLE语句建立的。
在外层,用户所看到的可以是基本表,也可以是视图。视图是一个虚拟表,它是由一个或几个基本表导出的表,它不直接存在于物理存储器上的表。视图是使用CDEATE VIEW语句建立的。
在内层,基本表(或库)用一个存储文件来表示,即用一组类型相同的存储记录值来表示。DBA可以对物理存储文件进行操作。
2.叙述使用SQL语言实现各种关系运算的方法。
答:由Visual Foxpro支持的SQL语言没有提供关系的笛卡尔积、交和差运算。其全关系运算对应的SQL语句格式是: R∪S:SELECT语句(生成R) UNION
SELECT语句(生成S)
选择:SELECT * FROM <表> WHERE <指定选择的条件> 投影:SELECT <投影字段列表> FROM<表>
选择:SELECT <连接的字段列表> FROM <连接的两个表名> WHERE<连接条件>
3.设有如图所示的三个关系,并假定这三个关系框架组成的数据模型就是用户子模式。其中各个属性的含义如下:A#(商店代号)、ANAME(商店名)、WQTY(店员人数)、CITY(所在城市)、B#(商品号)、BNAME(商品名称)、PRICE(价格)、QTY(商品数量)。试用SQL语言写出下列查询,并给出执行结果。 A AB
620 B
4
⑴ 找出店员人数不超过100人或者在长沙市的所有商店的代号和商店名。 SELECT A#,ANAME
FROM A WHERE WQTY<=100 OR CITY=“长沙”; ⑵ 找出供应书包的商店名。 SELECT A.ANAME FROM A,B,AB
WHERE A.A#=AB.A# AND B.B#=AB.B# AND B.BNAME=“书包”;
⑶ 找出至少供应了代号为“256”的商店所供应的全部商品的商店名和所在城市。
SELECT ANAME,CITY FROM A WHERE NOT EXSIST
(SELECT * FORM AB F WHERE A#=“256” AND NOT EXSIST (SELECT * FROM AB S WHERE A#=A.A# AND B#=F.B#));
书包 242 B# 1 2 3 BNAME 毛笔 羽毛球 收音机 PRICE 21 784 1325 第一百货商店 413 上海 A# 101 204 256 345 ANAME 韶山商店 前门百货商店 东风商场 铁道商店 WQTY 15 89 501 76 CITY 长沙 北京 北京 长沙 A# 101 101 101 101 204 256 256 345 345 345 620 B# 1 2 3 4 3 1 2 1 2 4 4 QTY 105 42 25 104 61 241 91 141 18 74 125
4.设有图书登记表TS,具有属性:BNO(图书编号),BC(图书类别),BNA(书名),AU(著者),PUB(出版社)。按下列要求用SQL语言进行设计。
查询按出版社统计其出版图书总数。 SELECT PUB,COUNT(BNO) FROM TS GROUP BY PUB
5.已知三个关系R、S和T如图所示。试用SQL语句实现如下操作:
R S T A B C A D E a1 b1 20 a1 d1 15 a1 b2 22 a2 d2 18 a2 b1 18 a1 d2 24 a2 b3 a2
⑴ 将R、S和T三个关系按关联属性建立一个视图R-S-T。 ⑵ 对视图R-S-T按属性A分组后,求属性C和E的平均值。 解:
⑴ CREATE VIEW R-S-T
AS SELECT R.A,B,C,S.D,E,F
FROM R,S,T WHERE R.A=S.A AND S.D=T.D;
⑵ SELECT AVG(C),AVG(E) FROM R-S-T GROUP BY A; 6.有关系R和S如图所示。
R S A B A B a1 b1 a1 40 a2 B2 a2 50 a3 b3 a3 55
试用SQL语句实现:
⑴ 查询属性C>50时,R中与相关联的属性B之值。
⑵ 当属性C=40时,将R中与之相关连的属性B值修改为b4。 解:
⑴ SELECT B FROM R,S WHERE R.A=S.A AND C>50; ⑵ UPDATE R
SET B=“b4” WHERE A IN(SELECT A FROM S WHERE C=40)
7.已知R和S两个关系如图所示。
R S A B C C D E a1 b1 c1 c1 d1 e1 a2 b2 c2 c2 d2 e2 a3 b3 c2 c3 d3 e3
执行如下SQL语句:
⑴ CREATE VIEW H (A,B,C,D,E)
AS SELECT A,B,R.C,D,E FROM R,S WHERE R.C=S.C;
D F d2 f2 d3 f3
⑵ SELECT B,D,E FROM H WHERE C=“C2” 试给出: ⑴ 视图H。
⑵ 对视图H的查询结果。 解:本题的结果如图所示。
视图H 对视图H的查询结果
8.已知关系R如图所示。 R
试用SQL语句实现下列操作:
⑴ 按属性A分组,求出每组中在属性C上的最大值和最小值,且将它们置于视图RAE中。 ⑵ 在视图RAE中查询属性A=“8”记录。 解
⑴ CREATE VIEW RAE(A,CMAX,CMIN)
AS SELECT A,MAX(C),MIN(C) FROM R GROUP BY A; ⑵ SELECT * FROM RAE WHERE A=“98”
9.已知学生表S和学生选课表SC。其关系模式如下: S(SNO,SN,SD,PROV) SC(SNO,CN,GR)
其中:SNO为学号,SN为姓名,SD为系名,PROV为省区,CN为课程名,GR为分数。试用SQL语言实现下列操作: ⑴ 查询“信息系”的学生来自哪些省区。
⑵ 按分数降序排序,输出“英语系”学生选修了“计算机”课程的学生的姓名和分数。 解:
⑴ SELECT DISTINCT PROV FROM S WHERE SD=“信息系” ⑵ SELECT SN,GR FROM S,SC
WHERE SD=“英语系”AND CN=“计算机”AND S.SNO=SC.SNO ORDWR BY GR DESC;
10.设有学生表S(SNO,SN)(SNO为学生号,SN为姓名)和学生选修课程表SC(SNO,CNO,CN,G)(CNO为课程号,CN为课程名,G为成绩),试用SQL语言完成以下各题:
⑴ 建立一个视图V-SSC(SNO,SN,CNO,CN,G),并按CNO升序排序。
A 97 a297 a397 98 98 98 99 99 B b1 b2 b3 b1 b2 b3 b1 b2 C 84 92 98 72 84 95 88 94 A a1 a2 a3 B b1 b2 b3 C c1 c2 c2 D d1 d2 d2 E e1 e2 e2 B b2 b3 D d2 d2 E e2 e2
⑵ 从视图V-SSC上查询平均成绩在90分以上的SN、CN和G。 解:
⑴ CREATE VIEW V-SSC(SNO,SN,CNO,CN,G) AS SELECT S.SNO,S.SN,CNO,SC.CN,SC.G FROM S,SC WHERE S.SNO=SC.SNO ORDWR BY CNO ⑵ SELECT SN,CN,G
FROM V-SSC GROGP BY SNO HAVING AVG(G)>90
11.设有关系模式: SB(SN,SNAME,CITY)
其中:SB表示供应商,SN为供应商代号,SNAME为供应商名字,CITY为供应商所在城市,主关键字为SN。 PB(PN,PNAME,COLOR,WEIGHT)
其中:P表示零件,PN为零件代号,PNAME为零件名字,COLOR为零件颜色,WEIGHT为零件重量,主关键字为PN。 JB(JN,JNAME,CITY)
其中:JB表示工程,JN为工程编号,JNAME为工程名字,CITY为工程式所在城市,主关键字为JN。 SPJB(SN,PN,JN,QTY)
其中:SPJ表示供应关系,SN是为指定工程提供零件的供应商代号,PN为所提供的零件代号,JN为工程编号,QTY表示提供的零件数量,主关键字为SN,PN,JN,外关键字为SN,PN,JN。
如图所示表示供应商(S)—零件(P)—工程(J)数据库表,写出实现以下各题功能的SQL语句: (1)取出所有工程的全部细节: SELECT * FROM JB TO SCREEN; JN JNAME CITY
-------------------------------------- J1 JN1 上海 J2 JN2 广州 J3 JN3 南京 J4 JN4 南京 J5 JN5 上海 J6 JN6 武汉 J7 JN7 上海
(2)取出所在城市为上海的所有工程的全部细节; SELECT * FROM JB WHERE CETY=“上海”TO SCREEN; JN JNAME CITY
-------------------------------------- J1 JN1 J5 JN5 J7 JN7
(3)取出重量最轻的零件代号; SELECT PN FROM PB WHERH WEIGHT=
(SELECT MIN(WEIGHT) FROM PB)TO SCREEN; PN ―――― P5
――――
(4)取出为工程式J1提供零件的供应商代号;
SELECT SN FROM SPJB WHERE JN=“J1”TO SCREEN; SN ―――― S1 S2 S3 ――――
(5)取出为工程J1提供P1的供应商代号; SELECT SN FROM SPJB
WHERE JN=“J1”AND PN=“P1” TO SCREEN; SN ―― S1 ――
(6)取出由供应商S1提供零件的工程名称; SELECT JB.JNAME FROM JB,SPJB
WHERE JB.JN=SPJB.JN AND SPJB.SN=“S1” TO SCREEN; JNAME ―――――― JN1 JN4
――――――
(7)取出供应商S1提供的零件的颜色; SELECT DISTINCT PB.COLOR FROM PB,SPJB
WHERE PB.PN=SPJB.PN AND SPJB.SN=“1”TO SCREEN; COLOR ――― 红 ―――
(8)取出为工程J1或J2提供零件的供应商代号; SELECT DISTINCT SN FROM SPJB
WHERE JN=“J1” OR JN=“J2”TO SCREEN; SN ――― S1 S2 S3 S5 ―――
(9)取出为工程J1提供红色零件的供应商代号; SELECT DISTINCT SPJB.SN FROM SPJB,PB
WHERE PB.PN=SPJB.PN AND SPJB.JN=“J1”AND PB.COLOR=“红” TO SCREEN; SN ――- S1 ――-
(10)取出为所在城市为上海的工程提供零件的供应商代号; SELECT DISTINCT SPJB.SN FROM SPJB,JB
WHERE SPJB.JN=JB.JN AND JB.CITY=“上海”TO SCREEN; SN ――― S1 S2 S3 S4 S5 ――-
(11)取出为所在城市为上海或北京的工程提供红色零件的供应商代号; SELECT SPJB.SN FROM PB,JB,SPJB
WHERE SPJB.PN=PB.PN AND JB.JN=SPJB.JN AND PB.COLOR=‘红’AND (JB.CITY=“上海”OR JB.CITY=“北京”TO SCREEN; SN ―― S1 S4 ――
(12)取出供应商与工程所在城市相同的供应商提供的零件代号; SELECT DISTINCT SPJB.PN FROM SB,JB,SPJB
WHERE SB.SN=SPJB.SN AND JB.JN=SPJB.JN AND SB.CITY=JB.CITY TO SCREEN; PN ―――― P1 P2 P3 P4 P5 P6 ―――――
(13)取出上海的供应商提供给上海的任一工程的零件的代号; SELECT SPJB.PN FROM SB,JB,SPJB
WHERE SB.SN=SPJB.SN AND JB.JN=SPJB.JN AND SB.CITY=“上海” AND JB.CITY=“上海” TO SCREEN; PN ―――― P1 P6 ――――
(14)取出至少由一个和工程式不在同一城市的供应商提供零件的工程代号; SELECT DISTINCT SPJB.JN FROM SB,JB,SPJB
WHERE SB.SN=SPJB.SN AND JB.JN=SPJB.JN AND SB.CITY<>JB.CITY TO SCREEN; JN ―――― J1 J2 J3 J4 J5 J6 J7 ――――
(15)取出上海供应商不提供任何零件的工程的代号 SELECT DISTINCT JN FROM SPJB WHERE JN NOT IN
(SELECT DISTINCT SPJB.JN FROM SB,SPJB
WHERE SB.SN=SPJB.SN AND SB.CITY=“上海”)TO SCREEN; JN ―――― J2 J5 J6 ――――
(16)取出这样一些供应商代号,它们能够提供至少一种由红色零件的供应商提供的零件; SELECT DISTINCT SPJB.SN FROM PB,SPJB WHERE SPJB.PN IN
(SELECT SPJB.PN FROM SPJB,SB,PB
WHERE SB.SN=SPJB.SN AND PB.PN=SPJB.PN AND PB.COLOR=“红” TO SCREEN; SN ―――― S1 S2 S3 S4
正在阅读:
关系数据库标准语言SQL练习题11-24
2014年下试题(JAVA语言)11-03
家是盛爱的地方作文06-18
建恒身份及访问管理系统简易版操作手册03-20
服装设计毕业论文 - 图文01-31
游舜帝陵作文600字07-08
omron E5_N高级功能说明书04-15
山西运城中学高中物理人教版选修31备课资料3.3 几种常见的磁场教案+学案+相关素材+同步测试,411-10
触手可及的白雪精灵作文800字07-12
2022年关于学生会九月份总结08-02
- exercise2
- 铅锌矿详查地质设计 - 图文
- 厨余垃圾、餐厨垃圾堆肥系统设计方案
- 陈明珠开题报告
- 化工原理精选例题
- 政府形象宣传册营销案例
- 小学一至三年级语文阅读专项练习题
- 2014.民诉 期末考试 复习题
- 巅峰智业 - 做好顶层设计对建设城市的重要意义
- (三起)冀教版三年级英语上册Unit4 Lesson24练习题及答案
- 2017年实心轮胎现状及发展趋势分析(目录)
- 基于GIS的农用地定级技术研究定稿
- 2017-2022年中国医疗保健市场调查与市场前景预测报告(目录) - 图文
- 作业
- OFDM技术仿真(MATLAB代码) - 图文
- Android工程师笔试题及答案
- 生命密码联合密码
- 空间地上权若干法律问题探究
- 江苏学业水平测试《机械基础》模拟试题
- 选课走班实施方案
- 练习题
- 语言
- 关系
- 数据库
- 标准
- SQL