数据库原理第三章练习.docx
- 文档编号:13173675
- 上传时间:2023-06-11
- 格式:DOCX
- 页数:23
- 大小:68.36KB
数据库原理第三章练习.docx
《数据库原理第三章练习.docx》由会员分享,可在线阅读,更多相关《数据库原理第三章练习.docx(23页珍藏版)》请在冰点文库上搜索。
数据库原理第三章练习
第三章SQL语言
一、选择题:
1、SQL语言是的语言,易学习。
A.过程化B.非过程化
C.格式化D.导航式
2、SQL语言是语言。
A.层次数据库B.网络数据库
C.关系数据库D.非数据库
3、SQL语言具有的功能。
2、关系规范化,数据操纵,数据控制
B.数据定义,数据操纵,数据控制
C.数据定义,关系规范化,数据控制
D.数据定义,关系规范化,数据操纵
4、SQL语言具有两种使用方式,分别称为交互式SQL和。
A.提示式SQLB.多用户SQL
C.嵌入式SQLD.解释式SQL
5、SQL语言中,实现数据检索的语句是。
A.SELECTB.INSERT
C.UPDATED.DELETE
6、下列SQL语句中,修改表结构的是。
A.ALTERB.CREATE
C.UPDATED.DELETE
7、SQL中,与“NOTIN”等价的操作符是。
A.=SOMEB.<>SOME
C.=ALLD.<>ALL
8、假设有三个基本表:
学生表S、课程表C、学生选课表SC,它们的结构如下:
S(S#,SN,SEX,AGE,DEPT)
C(C#,CN)
SC(S#,C#,GRADE)
检索所有比“王华”年龄大的学生姓名、年龄和性别。
正确的SQL语句是。
A.SELECTSN,AGE,SEX
FROMS
WHEREAGE>(SELECTAGEFROMS
WHERESN=”王华”)
B.SELECTSN,AGE,SEX
FROMS
WHERESN=”王华”
C.SELECTSN,AGE,SEX
FROMS
WHEREAGE>(SELECTAGE
WHERESN=”王华”)
D.SELECTSN,AGE,SEX
FROMS
WHEREAGE>王华.AGE
9、检索选修课程”C2”的学生中成绩最高的学生的学号。
正确的SELECT语句是。
A.SELECTS#
FROMSC
WHEREC#=”C2”ANDGRADE>=
(SELECTGRADEFROMSC
WHEREC#= “C2”)
B.SELECTS#
FROMSC
WHEREC#=”C2”ANDGRADEIN
(SELECTGRADEFROMSC
WHEREC#= “C2”)
C.SELECTS#
FROMSC
WHEREC#=”C2”ANDGRADENOTIN
(SELECTGRADEFROMSC
WHEREC#= “C2”)
D.SELECTS#
FROMSC
WHEREC#=”C2”ANDGRADE>=ALL
(SELECTGRADEFROMSC
WHEREC#= “C2”)
10、检索学生姓名及其所选修课程的课程号和成绩。
正确的SELECT语句是:
。
A.SELECTS.SN,SC.C#,SC.GRADE
FROMS
WHERES.S#=SC.S#
B.SELECTS.SN,SC.C#,SC.GRADE
FROMSC
WHERES.S#=SC.S#
C.SELECTS.SN,SC.C#,SC.GRADE
FROMS,SC
WHERES.S#=SC.S#
D.SELECTS.SN,SC.C#,SC.GRADE
FROMS,SC
11、要查找选修“COMPUTER“课程的女学生姓名,将涉及到关系。
A.SB.SC,C
C.S,SCD.S,C,SC
12、若用如下SQL语句创建一个表student:
CREATETABLEstudent(NOCHAR(4)NOTNULL,
NAMECHAR(8)NOTNULL,
SEXCHAR
(2),
AGEINT)
可以插入到student表中的是。
A.(’1031’,’曾华’,男,23)B.(’1031’,’曾华’,NULL,NULL)
C.(NULL,’曾华’,’男’,’23’)D.(’1031’,NULL,’男’,23)
13、SQL是的缩写。
AStandardQueryLanguage
BSelectQueryLanguage
CStructuredQueryLanguage
D以上都不是
14、视图是。
A基本表B外视图
C概念视图D虚拟表
15、SQL语言的操作对象。
A只能是一个集合B可以是一个或多个集合
C不能是集合D可以是集合或非集合
16、索引的作用之一是。
A节省存储空间B便于管理
C加快查询速度D建立各数据表之间的关系
17、以下有关索引的叙述中正确的是。
A索引越多,更新速度越快
B索引需要用户维护
C并置索引中列的个数不受限制
D索引可以用来提供多种存取路径
18、以下有关视图查询的叙述中正确的是。
A首先查询出视图中所包含的数据,再对进行查询
B直接对数据库存储的视图数据进行查询
C将对视图的查询转换为对相关基本表的查询
D不能对基本表和视图进行连表操作
19、以下有关UNIQUE约束的叙述中不正确的是。
AUNIQUE约束中不允许出现空值
BUNIQUE用于保证列或列组合的值唯一性
C可以定义多个UNIQUE约束
D系统为定义了UNIQUE约束的那些列建立唯一索引
20、以下关于空值的叙述中不正确的是。
A用=NULL查询指定列为空值的记录
B包含空值的表达式其计算结果为空值
C聚集函数通常忽略空值
D对允许空值的列排序时,包含空值的记录总是排在最前面
21、部分匹配查询中有关通配符“%”的叙述中正确的是。
A“%”代表一个字符
B“%”代表多个字符
C“%”可以代表零个或多个字符
D“%”不能与“_”同使用
22、在分组检索中,要去掉不满足条件的分组,应当。
A使用WHERE子句
B使用HAVING子句
C先使用WHERE子句,再使用HAVING子句
D先使用HAVING子句,再使用WHERE子句
23、以下有关子查询的叙述中不正确的是。
A子查询可以向其外部查询提供检索条件的条件值
B子查询可以嵌套多层
C子查询的结果是一个集合
D子查询总是先于其外部查询
24、以下有关ORDERBY子句的叙述中不正确的是。
AORDERBY子句可以对多个列进行排序
B在SELECT语句中,ORDERBY只能在所有其他子句之后,作为最后一个子句出现
C子查询也可以使用ORDERBY子句
D在视图中不能使用ORDERBY子句
25、以下有关WHERE子句的叙述中不正确的是。
AWHERE子句中可以包含子查询
B连接条件和选择条件之间应当使用OR逻辑运算
C不包含WHERE子句的SELECT语句进行的是单纯的投影操作
D如果FROM子句中引用了N个表,则FROM子句中至少应当包括N-1个连接条件
26、以下有关SELECT子句的叙述中不正确的是。
ASELECT子句中只能包含表中的列及其构成的表达式
BSELECT子句规定了结果集中的列顺序
CSELECT子句中可以使用别名
D如果FROM子句中引用的两个表中有同名的列,则在SELECT子句中引用它们时必须使用表名前缀加以限制。
27、以下有关聚集的叙述中不正确的是。
A聚集将具有一个或多个公共列,并经常一起使用的相关表物理地聚集存储在一起
B聚集中相同的值只存储一次
C聚集加快了多个表连接操作速度,但对于单个表则没有什么意义
D必须首先删除所有聚集表,才能删除聚集
二、填空题:
1、SQL是。
2、SQL语言的数据定义功能包括、、和。
3、SELECT命令中,子句用于选择满足给定条件的元组,使用子句可按指定列的值分组,同时使用子句可提取满足条件的组。
4、在SELECT命令中进行查询,若希望查询的结果不出现重复元组,应在SELECT语句中使用保留字。
5、子查询的条件依赖于父查询,这类查询称为。
6、视图是一个虚表,它是从导出的表。
在数据库中,只存放视图的,不存放视图对应的。
7、设有如下关系表R,S,T:
R(BH,XM,XB,DWH)
S(DWH,DWM)
T(BH,XM,XB,DWH)
①实现R
T的SQL语句是。
②实现
的SQL语句是。
③实现
的SQL语句是。
④实现
的SQL语句是。
⑤实现R*S的SQL语句是。
⑥实现
的SQL语句是。
8、设有如下关系表R:
R(NO,NAME,SEX,AGE,CLASS)
主码是NO(学号)。
①插入一条记录(25,‘李明’,‘男’,21,‘95031’)
②插入95031班学号为30号、姓名为‘郑和’的学生记录
③将学号为10的学生姓名改为‘王华’
④将所有‘95101’班号改为‘95091’
⑤删除学号为20的学生记录
⑥删除姓‘王’的学生记录
9、宿主语言向SQL语言提供参数是通过,在SQL语句中应用时,必须在宿主变量前加。
10、用OPEN语句打开游标时,游标指针指向查询结果的。
11、SQL语言具有和两种使用方式。
12、SELECT由、、和四个部分组成。
13、查询包含空值的记录时,使用比较运算符;查询不包含空值的记录时,使用比较运算符。
14、建立索引的两个主要目的是和。
15、SQL的数据更新功能主要包括、和三个语句。
16、视图是一个虚拟表,它由导出,数据库系统只存储视图的,而不存储视图的。
17、在部分匹配查询中,通配符“%”代表,“_”代表。
18、在SQL的数据库空值功能中,授予权限使用语句,收回权限使用语句。
三、应用题:
1、有两个关系:
C(CNO,CN,PCNO)
SC(SNO,CNO,G)
其中,C为课程表,对应的属性分别是课程号、课程名、选修课号;SC为学生选课表,对应的属性分别是学号、课号和成绩。
用SQL语言写出:
(1)对关系SC中课号等于C1的选择运算
(2)对关系C的课号、课程名的投影运算
(3)两个关系的自然连接运算
2、设有如下4个关系模式:
书店(书店编号,书店名,地址)
图书(书号,书名,定价)
图书馆(馆号,馆名,城市,电话)
图书发行(馆号,书号,书店号,数量)
请回答下列问题:
(1)用SQL语句检索已经发行的图书中最贵和最便宜的书名和定价
(2)写出下列SQL语句所表达的中文含义:
SELECT馆名
FROM图书馆
WHERE馆名IN
(SELECT馆号
FROM图书发行
WHERE书号IN
(SELECT书号
FROM图书
WHERE书名=‘数据库系统基础’)
3、设有职工关系模式如下:
people(pno,pname,sex,job,wage,dptno)
其中,pno为职工号,pname为职工姓名,sex为性别,job为职业,wage为工资,dptno为所在部门号。
请写出下列查询使用的SQL语句:
(1)查询工资比其所在部门平均工资高的所有职工信息
(2)查询工资大于‘赵明华’工资的所有职工信息
4、设有三个基本表:
A表(A#{商店代码},ANAME{商店名},WQTY{店员人数},CITY{所在城市});B表(B#{商品号},BNAME{商品名称},PRICE{价格},QTY{商品数量});AB表(A#,B#,QTY)。
试用SQL语句写出下列查询:
(1)找出店员人数不超过100人或者在长沙市的所有商店的商店代码和商店名;
(2)找出供应书包的商店名;
(3)找出至少供应代号为256的商店所供应的全部商品的商店名和所在城市;
5、设有学生表S(SNO,SN)和学生选修课程表SC(SNO,CNO,CN,G),试用SQL语句完成以下操作:
(1)建立一个视图V-SSC(SNO,SN,CNO,CN,G),并按CNO升序排序
(2)从视图V-SSC上查询平均成绩在90分以上的SN,CN,和G
6、设有4个关系模式:
S(SNO,SNAME,STATE,CITY):
S为供应商,属性依次为:
供应商号、供应商名、所在城市;
P(PNO,PNAME,COLOR,WEI,PRICE):
P表示零件,属性依次为:
零件号、零件名、零件颜色、零件重量和单价;
J(JNO,JNAME,CITY):
J表示工程,属性依次为:
工程号、工程名、所在城市
SPJ(SNO,PNO,JNO,QTY)SPJ表示供货关系,属性依次为:
供应商号、零件号、工程号和供货数量;
用SQL语句实现下面的查询要求:
(1)查询供应了全部零件的供应商名和其所在城市
(2)查询供应红色零件的供应商名
7、关于教学数据库的关系模式如下:
S(S#,SNAME,AGE,SEX):
S表示学生,各属性依次为:
学号、
姓名、年龄、性别
SC(S#,C#,GRADE):
SC表示成绩,个属性依次为:
学号、课程号、成绩
C(C#,CNAME,TEACHER)C表示课程,个属性依次为:
课程号、课程名、教师
试用SQL语句完成下列查询:
(1)检索王老师所授课程的课程号和课程名
(2)检索年龄大于22岁的男学生的学号和姓名
(3)检索学号为10001学生所学课程的课程名与任课教师
(4)检索至少选修王老师所授课程中一门课程的女学生姓名
(5)检索张同学不学的课程的课程号
(6)检索至少选修两门课程的学生学号
(7)检索全部学生都选修的课程的课程号与课程名
(8)检索选修课程包含王老师所授课程的学生学号
第三章答案
一、选择题:
1、B.2、C.3、B.4、C.5、A.6、A.7、D.8、A.
9、D.10、C.11、D.12、B.13、C14、D15、B16、C
17、D18、C19、A20、A21、C22、B23、D
24、C25、B26、A27、C
二、填空题:
1、结构化查询语言
2、定义数据库、定义基本表、定义视图、定义索引
3、WHERE、GROUPBY、HAVING
4、DISTINCT
5、相关子查询
6、一个或几个基本表、定义、数据
7、①SELECT*FROMRUNIONSELECE*FROMT
②SELECT*FROMRWHEREDWH=’100’
③SELECTXM,XBFROMR
④SELECTXM,DWHFROMRWHEREXB=’女’
⑤SELECTR.BH,R.XM,R.XB,R.DWH,S.DWMFROMR,SWHERER.DWH=S.DWH
⑥SELECTR.XM,R.XB,S.DWMFROMR,SWHERER.DWH=S.DWHANDR.XB=’男’
8、①INSERTINTORVALUES(25,‘李明’,‘男’21,‘95031’)
②INSERTINTOR(NO,NAME,CLASS)VALUES(30,‘郑和’,’95031’)
③UPDATERSETNAME=‘王华’WHERENO=10
④UPDATERSETCLASS=‘95091‘WHERECLASS=’95101‘
⑤DELETEFROMRWHERENO=20
⑥DELETEFROMRWHERENAMELINK‘王%‘
9、宿主变量、:
10、第一个记录
11、自含型宿主型
12、数据查询数据更新数据定义数据控制
13、ISNULLISNOTNULL
14、加快查询速度保证行的唯一性
15、INSERTUPDATEDELETE
16、一个或几个基本表定义数据
17、任意序列的零个或多个字符任意单个字符
18、GRANTREVOKE
三、应用题:
1、有两个关系:
C(CNO,CN,PCNO)
SC(SNO,CNO,G)
其中,C为课程表,对应的属性分别是课程号、课程名、选修课号;SC为学生选课表,对应的属性分别是学号、课号和成绩。
用SQL语言写出:
(1)对关系SC中课号等于C1的选择运算
(2)对关系C的课号、课程名的投影运算
(3)两个关系的自然连接运算
(1)SELECT*
FROMSC
WHERECNO=‘C1’
(2)SELECTCNO,CN
FROMC
(3)SELECTC.CNO,C.CN,C.PCNO,SC.SNO,SC.G
FROMC,SC
WHEREC.CNO=SC.CNO
2、设有如下4个关系模式:
书店(书店编号,书店名,地址)
图书(书号,书名,定价)
图书馆(馆号,馆名,城市,电话)
图书发行(馆号,书号,书店号,数量)
请回答下列问题:
(1)用SQL语句检索已经发行的图书中最贵和最便宜的书名和定价
(2)写出下列SQL语句所表达的中文含义:
SELECT馆名
FROM图书馆
WHERE馆名IN
(SELECT馆号
FROM图书发行
WHERE书号IN
(SELECT书号
FROM图书
WHERE书名=‘数据库系统基础’)
(1)ELECT图书.书名,图书.定价
FROM图书
WHER定价=(SELECTMAX(定价)
FROM图书,图书发行
WHERE图书.书号=图书发行.书号)
SELECT图书.书名,图书.定价
FROM图书
WHER定价=(SELECTMIN(定价)
FROM图书,图书发行
WHERE图书.书号=图书发行.书号)
(2)查询拥有已发行的‘数据库系统基础’一书的图书馆馆名。
3、设有职工关系模式如下:
people(pno,pname,sex,job,wage,dptno)
其中,pno为职工号,pname为职工姓名,sex为性别,job为职业,wage为工资,dptno为所在部门号。
请写出下列查询使用的SQL语句:
(1)查询工资比其所在部门平均工资高的所有职工信息
(2)查询工资大于‘赵明华’工资的所有职工信息
(1)SELECT*
FROMpeoplex
WHEREwage>(SELECTAVG(wage)
FROMpeopley
WHEREx.dptno=y.dptno)
(2)SELECT*
FROMpeople
WHEREwage>(SELECTwage
FROMpeople
WHEREpname=’赵明华’)
4、设有三个基本表:
A表(A#{商店代码},ANAME{商店名},WQTY{店员人数},CITY{所在城市});B表(B#{商品号},BNAME{商品名称},PRICE{价格},QTY{商品数量});AB表(A#,B#,QTY)。
试用SQL语句写出下列查询:
(1)找出店员人数不超过100人或者在长沙市的所有商店的商店代码和商店名;
(2)找出供应书包的商店名;
(3)找出至少供应代号为256的商店所供应的全部商品的商店名和所在城市;
(1)SELECTA#,ANAME
FROMA,B,AB
WHEREWQTY<=100ORCITY=‘长沙市’
(2)SELECTA.ANAME
FROMA,B,AB
WHEREA.A#=AB.A#ANDB.B#=AB.B#ANDB.BNAME=‘书包’
(3)SELECTA.ANAME,A.CITY
FROMA,AB
WHEREA.A#=AB.A#ANDAB.B#IN
(SELECTAB.B#
FROMAB
WHEREA#=’256’)
SELECTANAME,CITYFROMA
WHERENOTEXISTS(SELECT*FROMBWHEREEXISTS
(SELECT*FROMABAB1
WHEREA#='256'ANDB#=B.B#)ANDNOTEXISTS
(SELECT*FROMABAB2
WHEREA#!
='256'ANDA#=A.A#ANDB#=B.B#));
5、设有学生表S(SNO,SN)和学生选修课程表SC(SNO,CNO,CN,G),试用SQL语句完成以下操作:
(1)建立一个视图V-SSC(SNO,SN,CNO,CN,G),并按CNO升序排序
(2)从视图V-SSC上查询平均成绩在90分以上的SN,CN,和G
(1)CREATEVIEWV-SSC(SNO,SN,CNO,CN,G)
ASSELECTS.SNO,S.SN,SC.CNO,SC.CN,SC.G
FROMS,SC
WHERES.SNO=SC.SNO
ORDERBYCNO
(2)SELECTSN,CN,G
FROMV-SSC
GROUPBYSNO
HAVINGAVG(G)>90
6、设有4个关系模式:
S(SNO,SNAME,STATE,CITY):
S为供应商,属性依次为:
供应商号、供应商名、所在城市;
P(PNO,PNAME,COLOR,WEI,PRICE):
P表示零件,属性依次为:
零件号、零件名、零件颜色、零件重量和单价;
J(JNO,JNAME,CITY):
J表示工程,属性依次为:
工程号、工程名、所在城市
SPJ(SNO,PNO,JNO,QTY)SPJ表示供货关系,属性依次为:
供应商号、零件号、工程号和供货数量;
用SQL语句实现下面的查询要求:
(1)查询供应了全部零件的供应商名和其所在城市
(2)查询供应红色零件的供应商名
(1)SELECTSNAME,CITY
FROMS
WHERENOTEXISTS
(SELECT*
FROMP
WHERENOTEXISTS
(SELECT*
FROMSPJ
WHERESPJ.SNO=S.SNOANDSPJ.PNO=P.PNO)
(2)SELECTSNAME
FROMS,P,SPJ
WHERES.SNO=SPJ.SNOANDSPJ.PNO=P.PNOANDP.COLOR=’红色’
7、关于教学数据库的关系模式如下:
S(S#,SNAME,AGE,SEX):
S表示学生,各属性依次为:
学号、
姓名、年龄、性别
SC(S#,C#,GRADE):
SC表示成绩,个属性依次为:
学号、课程号、成绩
C(C#,CNAME,TEACHER)C表示课程,个属性依次为:
课程号、课程名、教师
试用SQL语句完成下列查询:
(1)检索王老师所授课程的课程号和课程名
(2)检索年龄大于22岁的男学生的学号和姓名
(3)检索学号为10001学生所学课程的课程名与任课教师
(4)检索至少选修王老师所授课程中一门课程的女学生姓
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 数据库 原理 第三 练习