教学课件第二章关系运算
合集下载
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
姓名 王平 宁静 张宇
性别 女 女 男
专业 经管 计算机 计算机
S
学号 4051 4063 4071
姓名 王平 张宇 刘兵
性别 女 男 男
专业 经管 计算机 电子
差(Difference)
R-S S-R
学号 4062
姓名 宁静
性别 女
专业 计算机
R
学号 4051 4062 4063
姓名 王平 宁静 张宇
元组个数(基数)=m1 m2 4 3=12
D1 D2
{(1,2),(1,4),(1,6), (3,2),(3,4),(3,6), (5,2),(5,4),(5,6), (7,2),(7,4),(7,6)}
D1 1 1 1 3 3 3 5 5 5 7 7 7
D2 2 4 6 2 4 6 2 4 6 2 4 6
关系数据结构
1、域:具有相同特性的数据集合
D1={1,3,5,7,9…99}
2、笛卡儿积:定义在一组域上的集合。假定 一组域用D1,D2,…Dn表示。
笛卡儿积:D1 D2 … Dn 元素个数:m1 m2 … m3
(m1,m2…m3分别是各域元素的个数)
例:卡儿积
关系完整性
关系完整性就是关系模型中数据的正确性、 一致性和有效性。
包括三方面 参照关系
实体完整性 关系的主码不能为空
在两个参照和被参照关系中,参照关
参照完整性 系中每个元组的外码或者为空,或者
等于被参照关系中某个元组的主码
用户定义完整性 对每个关系每个属性的取值限制
(约束)的具体定义
被参照关 系
学生(学号,姓名,班级号) 班级(班级号,专业,教室)
§2.2 关系运算
传统的集合运算
关系的基本运算
并、交、差、笛卡儿积
分别用符号∪、∩、-、表示
专门的关系运算
选择、投影、连接
分别用符号δ、П、⋈表
示
∧(与)、 ∨(或)、(属于)、(不属于)
传统的集合运算
• 并(Union)
R∪S =S∪R
学号 4071
4051
姓名 刘兵
王平
性别 男
女
专业 电子
经管
性别 专业 女 经管 男 经管 女 计算机 女 计算机
4063 张宇 男 4071 刘兵 男
计算机 电子
选课关系SC
课程关系C
学号 4051 4051 4052 4052
课程号 c001 c002 c002 c003
成绩 78 89 88 85
课程号 C001 C002 C003 C004 C005
外码:关系中的属性或属性组并非该关系的主码,但它们是 另外一个关系的主码,则称其为该关系的外码
学生(学号,姓名,班级号) 班级(班级号,专业,教室)
学生(学号,姓名,班级) 课程(课程号,课程名,学分) 成绩(学号,课程号,成绩)
关系模型中,基本的数据结构是二维表,关系之间 的联系通过不同关系中的公共属性来体现。
⋈ ⋈ П课程号 ( X ( δ姓名=’李飞’(S)) C
P50 第10题
R
ABC 1 10 50 2 10 60 3 20 72 4 30 60
δB>15(R)= 4,30,60 , 3,20,72
P50 第11题
R
ABC 1 10 50 2 10 60 3 20 72 4 30 60
ABC 1 10 50 2 10 60 3 20 72 4 30 60
S关系
DE 55 8 77 11
练习
设一个关系A具有4个属性和4个元组,关系B具有3个属性 和3个元组,则关系A×B具有____________________个属 性和_________________个元组。
学生关系S
学号 姓名 4051 王平 4052 赵路 4061 邱华 4062 宁静
R
ABC 1 10 50 2 10 60 3 20 72 4 30 60
ABC
1 10 50 R ⋈ R
2 10 60 3 20 72 4 30 60
P50 第12题
如下关系中,选修了课程名为“程序设计”课程的 全部学生信息的运算表达式是
S(学号,姓名) C(课程号,课程名) X(学号,课程号,成绩)
课程名 高等数学 会计学 管理学 程序设计 数字电路
学分 6 5 4 3 4
查出没有选修任何课程的全部学生 的学号、姓名、性别、专业
学号
(Ⅱ学号(S) - Ⅱ学号(SC))⋈S
4061 4062 4063 4071
学号 姓名 4061 邱华 4062 宁静 4063 张宇 4071 刘兵
性别 专业 女 计算机 女 计算机 男 计算机 男 电子
D2 2 4 6 2 4 6 2 4 6 2 4 6
4、码(键、关键字)
R(学号,姓名,年龄,专业,身份证号)
超码:关系中能唯一标识每个元组的属性或属性组
学号 身份证号 (专业,身份证号)… 候选码:关系中能唯一标识每个元组的最少属性或属性组
学号 身份证号 主码:候选码中的一个 备用码:除了主码以外的所有候选码 主属性和非主属性:包含在任何候选码中的属性为主属性
简答题 1、设一个学生关系为S(学生号,姓名),课程关系为C(课 程号,课程名),选课关系为X(学生号,课程号,成绩), 请用关系代数式写出:选修了课程名为‘电子商务’课程的 全部学生信息。
⋈ ⋈ S (∏学生号( X (δ课程名=‘电子商务‘(C)) )
2、设一个学生关系为S(学生号,姓名),课程关系为C( 课程号,课程名),选课关系为X(学生号,课程号,成绩 ),请写出姓名为李飞的学生所选修的全部课程信息所对应 的关系运算表达式。
性别 女 女 男
专业 经管 计算机 计算机
S
学号 4051 4063 4071
姓名 王平 张宇 刘兵
性别 女 男 男
专业 经管 计算机 电子
笛卡儿积
RS S R
AB CDE 1 10 20 55 8 1 10 20 77 11 3 15 25 55 8 3 15 25 77 11
R关系
ABC 1 10 20 3 15 25
4052 赵路 男
经管
R
学号 姓名 性别 专业
4071 刘兵 男
电子
S
学号 姓名 性别 专业
4071 刘兵 男
电子
4051 王平 女
经管
4052 赵路 男
经管
交(Intersection)
R ∩ S =S ∩R
学号 4051 4063
姓名 王平 张宇
性别 女 男
专业 经管 计算机
R
学号 4051 4062 4063
3、关系
关系模式
R(D1,D2)
二元关系(二个域)
关系名
属性名
属性名必须可区分
元组不允许重复
关系与属性的次序、元组的次序无关
属性值必须是单值,即不可再分
学生(学号,姓名,成绩(数学,物理,化学))
学生1(学号,姓名) 学生2(学号,数学,物理,化学)
D1 1 1 1 3 3 3 5 5 5 7 7 7
s ⋈( Ⅱ学号 ( X ⋈δ课程名=‘程序设计’(C) ) )
学生号 课程号 成绩 课程名
…
… … 程序设计
P50 第13题
如下关系中,所有被选修课程信息的运算表达式是
S(学生号,姓名) C(课程号,课程名) X(学生号,课程号,成绩)
⋈ 课程号(X)
C