数据库关系运算
孙政先
王婷 吕文昆 孙炜
男
女 男 女
张欣欣
王婷
女
女
喜欢跳舞但是不喜欢唱歌的学生R-S
Sname
Sex
李敬
高全英 张欣欣
女
女 女
第3章 关系代数
3.1 集合运算 刘鹤年编写
3.1.3
交运算
设:关系R与关系S有相同的属性,并且对应属性
有相同的域。 则关系R和S的交,将产生一个包含所有既属于R 也属于S的元组的新关系。记作:R∩S。 由于R∩S =R–(R-S),或者R∩S =S–(S-R),
刘鹤年编写 这个表是我们 要的关系吗?
刘逸
刘逸 刘逸
计算机
计算机 机械
刘琛
王敏 李勇
刘逸
刘逸
机械
机械
刘琛
王敏
第3章 关系代数
关于关系的数学描述
刘鹤年编写
关系模型的数学基础是关系代数。关系代数是由一组 以关系作为运算对象的特定的运算所组成的。用户通过这组 运算,对一个或多个关系不断地进行“组合”与“分割”从 而得到所需要的数据。 从一组集合的笛卡尔积中,抽取能反映现实世界的, 具有实际意义的子集。该子集即为一个关系。 D1×D2×…×Dn的子集叫做在域D1×D2×…×Dn 上的关系,表示为:
域的积
关系的形式化定义:
笛卡尔积 或其子集
第3章 关系代数
笛卡尔积示例
D1=导师集合Supervisor={张清枚,刘逸}
D2=专业集合Speciality={计算机,机械} D3=研究生集合Postgraduate={李勇,刘琛,王敏}
D1×D2×D3={
刘鹤年编写
三个域
(张清枚,计算机,李勇), (张清枚,计算机,刘琛),(张清枚,计算机,王敏), (张清枚,机械,李勇), (张清枚,机械,刘琛), (张清枚,机械,王敏), (刘逸,计算机,李勇), (刘逸,计算机,刘琛), (刘逸,计算机,王敏), (刘逸,机械,李勇), (刘逸,机械,刘琛), (刘逸,机械,王敏) }
R(D1×D2×…×Dn)
N是关系的目或度。
第3章 关系代数
刘鹤年编写
关系代数运算的三个要素: 运算对象:关系 运算结果:关系 运算符:四类。集合运算符、关系运算符、 算术比较符和逻辑运算符。 关系代数运算分: 传统的集合运算: 并、差、交、广义笛卡尔积 专门的关系运算: 选择、投影、连接、除
第3章 关系代数
第3章 关系代数
3.1 集合运算 刘鹤年编写
3.1.2
差运算(续)
差操作的示意图如下:
第3章 关系代数
3.1 集合运算 刘鹤年编写
3.1.2
差运算(续)
(R中有,S中没有的元组)
第3章 关系代数
喜欢跳舞的学生关系R Sname 李敬 高全英 吴秋娟 穆金华 Sex 女 女 女 男 喜欢唱歌的学生关系S 刘鹤年编写 Sname Sex 赵成刚 张峰 吴秋娟 穆金华 男 男 女 男
第3章 关系代数
喜欢跳舞的学生关系R Sname 李敬 Sex 刘鹤年编写 女 女 女 男
喜欢跳舞或喜欢唱歌的学生关系R∪S
高全英 吴秋娟 穆金华
Sname 李敬 高全英
Sex 女
张欣欣
王婷 喜欢唱歌的学生关系S Sname 赵成刚 张峰 吴秋娟 穆金华 孙政先 王婷 吕文昆 孙炜
女
女 Sex 男 男 女 男 男 女 男 女
第3章 关系代数
3.1 集合运算
3.1.1
并运算
刘鹤年编写
设:关系R与关系S有相同的属性,并且对应属性 有相同的域。 则关系R和S的并将产生一个包含R、S中所有不同 元组的新关系。记作:R∪S。 并操作的示意图如下:
第3章 关系代数
3.1 集合运算 刘鹤年编写
3.1.1 并运算(续) 在实际运用中,并运算可实现插入新元组的操作。
第3章 关系代数
关系模型概述
关系数据结构
数据结构 数 据 模 型 关系模型
刘鹤年编写
二维表
选择、投影、连接 增加、删除、修改等
关系操作集合
数据操作
实体完整性约束
数据的约束条件 关系完整性约束 参照完整性约束 用户定义的完整性 约束
第3章 关系代数 数字、 字符及 其子集。
刘鹤年编写
关系的数据库结构 和形式化定义 – 域(Domain) – 笛卡尔积(Cartesian Pdoduct) – 关系(Relation)
3.1 集合运算 刘鹤年编写
3.1 集合运算
传统的集合运算包含并、差、交、广义笛卡尔积等。 其运算是从关系的水平方向(表中的行)来进行的。 关系代数运算符 运算符 集 合 运 算 符 ∪ ∩ × 含义 并 差 交 笛卡尔积 运算符 > 比 较 ≥ 运 < 算 ≤ 符 = <> 含义 大于 大于等于 小于 小于等于 等于 不等于
吴秋娟
穆金华 张欣欣
女
男 女
王婷
赵成刚 张峰 孙政先 吕文昆 孙炜
女
男 男 男 男 女
第3章 关系代数
3.1 集合运算 刘鹤年编写
3.1.2
差运算
设:关系R与关系S有相同的属性,并且对应属性有
相同的域。 则关系R和S的差,将产生一个包含所有属于R但不 属于S的元组新关系。记作:R-S。 差运算是有序的:R-S不等于S-R。
D1×D2×D3的基数M = 2 ×2×3 = 12(共有12个元组)
第3章 关系代数
上例的运算结果
Supervisor 张清枚 张清枚 张清枚 张清枚 张清枚 张清枚 刘逸 Speciality 计算机 计算机 计算机 机械 机械 机械 计算机
Postgraduate 李勇 刘琛 王敏 李勇 刘琛 王敏 李勇
所以R∩S 运算是一个复合运算。
第3章 关系代数
3.1.3
交运算(续)
刘鹤年编写
交操作的示意图,如图3-3所示。
第3章 关系代数
3.1 集合运算 刘鹤年编写
3.1.3
交运算(续)
(属于R而且也属于S)
第3章 关系代数
刘鹤年编写
本章要点
并、 差、交、 笛卡尔积运算 投影、选择和连接运算
从第9张PPT开始 讲述每个运算的 规则。是重点。
第3章 关系代数
关系模型概述
刘鹤年编写
关系模型是以关系代数为理论基础的;关系模 型的理论的奠基人是IBM公司的E. F. Codd。 目前国际著名的关系数据库有:DB2,Oracle, SQL Server等。在我国,东软集团有限公司的 OpenBase、人大金仓的Kingbase ES、武汉达 梦公司的DM4和中国航天科技集团公司OSCAR 已经成为我国的支柱型关系数据库产品。 关系数据库系统是支持关系模型的数据库系统。