关系模型之关系代数
关系代数概述
运算特点
- 基于集合,提供了一系列的关系代数操作:并,差,笛卡尔积(广义积),选择,投影和更名等基本操作.
- 以及交,连接和关系除等扩展操作,是一种集合思维的操作语言.
- 关系代数操作以一个或多个关系为输入,结果是一个新的关系.
- 用对关系的运算来表达查询,需要指明所用操作,具有一定的过程性.
- 是一种抽象的语言,是学习其他数据库语言,如SQL语言等的基础.
关系代数操作
- 集合操作
- 纯关系操作
基本操作
运算约束
- 并相容性
并(Union)
差(Difference)
广义笛卡尔积
选择(Select)
投影(Project)
小结
扩展操作
交(Intersection)
θ-连接(θ-Join)
投影与选择操作只是对单个关系(表)进行操作、而实际应用中往往涉及多个表之间的操作,这就需要θ-连接操作
特别注意:虽然我们在讲解0-连接操作时,使用笛卡尔积然后再进行选择来得到0连接结果。这主要是方便大家理解。但当引入连接操作后,DBMS可直接进行连接操作,而不必先形成笛卡尔积.
等值连接(Equi-Join)
自然连接(Natural-Join)
小结
书写关系代数的思维
扩展操作
除(Division)
外连接(Outer-Join)
小结
总结