数据库的关系代数运算,在我看来就是对数据库表的操作的 抽象化表示,因此想要掌握数据库的操作,关系代数的运算是必须学习的,废话不多说,开搞!
正文
关系代数运算的形式多种多样,对应了我们对数据库中表的不同操作,下面依次讲解它们
并
关系r与s具有 相同的 关系模式,即r与s的元数相同,关系r与s的“并”由属于r或属于s的元祖集合组成
差
关系r与s具有 相同的 关系模式,关系r与s的差是由属于r但不属于s的元组构成的集合
广义笛卡尔积
两个元数分别为n目和m目的关系r和s的广义笛卡尔积是一个(n+m)列的元组集合,元组的前n列是关系r的一个元组,后m列是关系s的一个元组
投影
投影是从关系的 垂直方向 进行运算,在关系r中选择出若干属性列组成新的关系
选择
选择运算是从关系的 水平方向 进行运算,是从关系r中选择满足给定条件的诸元组
交
关系r与s具有 相同的 关系模式,关系r与s的交由属于r同时又属于s的元组构成
联接
分为θ联接、自然联接、外联接
- θ联接:从r和s的笛卡儿乘积中选取满足条件“iθj”的元组
- 自然联接:是一种特殊的等值联接,它要求两个关系中进行比较的分量必须是相同的属性组,并且在结果集中将重复属性列去掉
- 等值联接:从r和s的笛卡儿乘积中选取满足条件“i=j”的元组