第二部分 关系运算
(一)、考核内容
关系的数学定义、关系代数
(二)、考核要求
(1)了解笛卡尔积、关系的数学定义。
(2)理解基于传统集合理论的关系运算:并、交、差、广义笛卡尔积。
(3)理解关系代数特有的关系运算:投影、选择、商、联接、自然连接。
(4)掌握使用基本关系运算表示4种非基本关系运算的方法。
(5)掌握关系代数运算在关系数据库查询操作中的应用。
(6)了解关系演算。
(一)选择
1.关系数据库管理系统应能实现的专门关系运算包括( )。
A.排序、索引、统计 B.选择、投影、连接 C.关联、更新、排序 D.显示、打印、制表
2.关系模型中,一个关键字是( ) 。
A.可由多个任意属性组成 B.至多由一个属性组成
C.可由一个或多个其值能惟一标识该关系模式中任何元组的属性组成 D.以上都不是
3.自然连接是构成新关系的有效方法。一般情况下,当对关系R和S使用自然连接时,要求R和S含有一个或多个共有的( )。
A.元组 B.行 C.记录 D.属性
4.关系运算中花费时间可能最长的运算是()。
A.投影 B.选择 C.笛卡尔积 D.交
5.关系模式的任何属性( )。
A.不可再分 B.可再分 C.命名在该关系模式中可以不惟一 D.以上都不是
6.在关系代数运算中,四种基于传统集合理论的关系运算为( )。
A.并、差、选择、投影 B.并、交、选择、投影
C.交、并、差、广义笛卡尔积 D.并、差、交、选择
7.设有关系R,按条件f对关系R进行选择,正确的是()。
A.R´R B.R wv R C. sf(R) D.Pf(R)
8.如图所示,两个关系R1和R2,它们进行( )运算后得到R3。
A.交 B.并 C.笛卡尔积 D.连接
9. 自然连接是构成新关系的有效方法。一般情况下,当对关系R和S使用自然连接时,要求R和S含有一个或多个共有的( )。
A. 元组 B. 行 C. 记录 D. 属性
10. 关系数据库管理系统应能实现的专门关系运算包括 ( )。
A.排序、索引、统计 B.选择、投影、连接
C.关联、更新、排序 D.显示、打印、制表
11.在关系代数的传统集合运算中,假定有关系R和S,运算结果为w。如果W中的元组属于R,或者属于S,则w为 ① 运算的结果。如果w中的元组属于R而不属于S,则w为 ② 运算的结果。如果w中的元组既属于R又属于S,则W为 ③ 运算的结果。
A.笛卡尔积 B.井 C.差 D.交
12.在关系代数的专门关系运算中,从表中取出满足条件的属性的操作称为 ① ;从表中选出满足某种条件的元组的操作称为 ② ;将两个关系中具有共同属性值的元组连接到一起构成新表的操作称为 ③ 。
A.选择 B.投影 C.连接 D.扫描
13.自然连接是构成新关系的有效方法。一般情况下,当对关系R和S使用自然连接时,要求R和S含有一个或多个共有的( )。
A.元组 B.行 C.记录 D.属性
14.等值连接与自然连接是( ).
A.相同的 B.不同的
15. 设有属性A,B,C,D,以下表示中不是关系的是( )。
A.R(A) B.R(A,B,C,D)
C.R(A×B×C×D) D.R(A,B)
16.设关系R(A,B,C)和S(B,C,D),下列各关系代数表达式不成立的是( )。
A.PA(R) ∞ PD(S) B.R∪S C. PB(R) ∩ PB(S) D.R∞S
17. 模式的任何属性( )。
A.不可再分 B.可再分
C.命名在该关系模式中可以不惟一 D.以上都不是
18.关系数据库用 ① 来表示实体之间的联系,其任何检索操作的实现都是由 ② 三种基本操作组合而成的。
①A.层次模型 B.网状模型 C.指针链 D.表格数据
②A.选择、投影和扫描 B.选择、投影和连接
C.选择、运算和投影 D.选择、投影和比较
19. 数据库中的关键字是指( )。
A.能惟一决定关系的字段 B.不可改动的专用保留字
C.关键的很重要的字段 D.能惟一标识元组的属性或属性集合
20.有关系R,按条件f对关系R进行选择,正确的是 。
A.R´R B.R∞ R C. sf(R) D.Pf(R)
21 .数。。。。。。据模型中,通常可以把 ① 称为属性,而把 ② 称为关系模式。常用的关系运算是关系代数和 ③ 。在关系代数中,对一个关系做投影操作后,新关系的元组个数 ④ 原来关系的元组个数。用 ⑤ 形式表示实体类型和实体间的联系是关系模型的主要特征。
①A.记录 B.基本表 C.模式 D.字段
②A.记录 B.记录类型 C.元组 D.元组集
③A.集合代数 B.逻辑演算 C.关系演算 D.集合演算
④A.小于 B.小于或等于 C.等于 D.大于
⑤A.指针 B.链表 C.关键字 D.表格
22. R(A,B,C,D)和S(C,D,E),下列不成立的关系代数表达式是( )。
A.R∞S B. π1,2,3,4,7(RS) C.RS D. π1,2,3(R)∞π1,3(R)
23.关系代数运算中,专门的关系运算有()
A.选择、投影、连接 B.交、并、差
C.笛卡尔积 、连接、自然连接 D.笛卡尔积、商
24.传统的集合“并、交、差”运算施加于两个关系时,这两个关系的() 必须相同。
A.属性个数 B.关系模式 C.属性取值 D.关系状态
25关系代数中,从两个关系中找出相同元组的运算称为( ) 运算。
A.并 B.差 C.交 D.商
(一)选择
1. B 2.C 3. D 4.C 5. A
6. C 7. C 8. D 9. D 10. B
11.①B ②C ③D 12. ①B ②A ③C 13. D 14. B 15. C
16. B 17. A 18. ①D ②B 19. D 20. C
21. ①D ②B ③C ④B ⑤D 22. C 23. A 24. B 25. C
(二)概念、术语:
术语:
关系的差运算
笛卡儿积运算
关系的笛卡尔定义
投影运算
选择运算
连接运算
自然联接运算
简述
(1)简述关系数据语言的特点和分类。
(2)简述等值连接与自然连接的区别和联系。
(二)概念、术语:
术语:
关系的差运算:设关系R和S具有相同的关系模式,R和S的差运算是由属于R但不属于S的所有元组组成的的集合。
笛卡儿积运算:设关系R和S的目数分别为r和s,R和S的笛卡儿积是一个r+s目的元组集合,每个元组的前r个分量来自R中的的一个元组,后s个分量来自S中的一个元组。
关系的笛卡尔定义:笛卡尔积D1×D2× …×Dn的任一子集称为在域D1,D2, …,Dn上的关系。
投影运算:投影运算是按照j1,j2,…,jk的顺序,从关系R中取出列序号为j1,j2,…,jk的k列,并除去结果中的重复无级,构成一个以j1,j2,…,jk为顺序的k目关系。
选择运算:从关系R中挑选出满足公式F的那些元组。
连接运算:从关系R和S的笛卡儿积中选取属性值满足某一比较运算操作的元组。
自然联接运算:从关系R和S的笛卡尔积中选取公共属性值相等的元组,并去除重复的属性。
简述
(1)简述关系数据语言的特点和分类。
答:关系数据语言可以分为三类:
关系代数语言。
关系演算语言:元组关系演算语言和域关系演算语言。
SQL:具有关系代数和关系演算双重特点的语言。
这些关系数据语言的共同特点是,语言具有完备的表达能力,是非过程化的集合操作语言,功能强,能够嵌入高级语言中使用。
(2)简述等值连接与自然连接的区别和联系。
答:等值连接表示为R∞S,自然连接表示为R∞S;自然连接是除去重复属性的 R.A=S.B等值连接。两者之间的区别和联系如下:
· 自然连接一定是等值连接,但等值连接不一定是自然连接。
·等值连接要求相等的分量,不一定是公共属性;而自然连接要求相等的分量必须是公共属性。
· 等值连接不把重复的属性除去;而自然连接要把重复的属性除去。
(三)应用题
1. 设有如下所示的关系模式S、C、SC:
S(S#,SNAME,AGE,SEX)
C(C#,CNAME,TEACHER)
SC(S#,C#,GRADE)
试用关系代数表达式表示下列查询语句:
(1)检索“陆定”老师所授课程的课程号(C#)和课程名(CNAME)。
(2)检索年龄大于20的男学生学号(S#)和姓名(SNAME)。
(3)检索至少选修“陆定”老师所授全部课程的学生姓名(SNAME)。
(4)检索”李翔”同学不学课程的课程号(C#)。
(5)检索至少选修两门课程的学生学号(S#)。
(6)检索全部学生都选修的课程的课程号(C#)和课程名(CNAME)。
(7)检索选修课程包含“陆定”老师所授课程之一的学生学号(S#)。
(8)检索选修课程号为k1和k5的学生学号(S#)。
(9)检索选修全部课程的学生姓名(SNAME)。
(10)检索选修课程包含学号为2的学生所修课程的学生学号(S#)。
(11)检索选修课程名为“C语言”的学生学号(S#)和姓名(SNAME)。
2.关系R和S如下图所示,试计算R÷S。
3.设有如图所示的关系R和S,计算:
(1)R1=R-S
(2)R2=R∪S
(3)R3=R∩S
(4)R4=R×S
4.设有如图所示的关系R,S和T,计算:
(1)R1=R∪S
(2)R2=R-S
(3)R3=R∞T
(4)R4=R ∞ T
A<C
(5)R5=∏A(R)
(6)R6=σA=C(R×T)
5.设有如图所示的关系R,S,计算:
(1)R1=R ∞ S
(2)R2=R ∞ S
[2]<[2]
(3)R3=σB=D(R×S)
6.设有如图所示的两上关系E1和E2,其中E2是从E1中经过关系运算所形成的结果,试给出该运算表达式。
7.设有如下所示的三个关系S、C和SC。用关系代数表达式表示下列要求,并求出结果
(1).检索籍贯为上海的学生姓名、学号和选修的课程号。
(2).检索选修操作系统的学生姓名、课程号和成绩。
(3).检索选修了全部课程的学生姓名、年龄。
8.以下述数据库各关系模式为例,
仓库(仓库号,城市,面积)
职工(仓库号,职工号,工资)
订购单(职工号,供应商号,订购单号,订购日期)
供应商(供应商号,供应商名称,地址)
用关系代数完成以下检索。
解:
(1).检索在仓库2工作的职工的工资。
(2).检索在上海工作的职工的工资。
(3).检索北京的供应商名称。
(4).检索目前与职工E6有业务联系的供应商名称。
(5).检索所有职工的工资大于1220的仓库所在的城市。
(6).检索和北京的所有供应商都有业务联系的职工的工资。
应用题
1.
:2:
3:
4.
5.
6.
从E1生成E2所经过的关系运算是:∏2,3(σB>2(E1))或∏2,3(σC>3(E1))。
7.
解:
(1).R1=∏2,1,6(σ籍贯=’上海’(swv sc))
或:R1=∏姓名,S.学号,课程号(σ籍贯=’上海’(swv sc))
或:R1=∏姓名,S.学号,课程号(σ籍贯=’上海’(s)wv sc)
(2). R2= ∏2,6,7(swv scwv σ课程名=’操作系统’(C))
或:R2=∏姓名,SC.课程号,成绩(swv scwv σ课程名=’操作系统’(C))
(3). R3=∏2,3(swv ∏1,2(sc)÷∏1(C)))
或:R3=∏姓名,年龄(swv (∏学号,课程号(sc)÷∏课程号(C)))
8.