导航

数据库系统学习笔记(五)

Posted on 2021-02-10 12:36  rossxp  阅读(111)  评论(0编辑  收藏  举报

(一)什么是关系代数

 

 关系代数操作包括集合操作和纯关系操作两大类:、

1,

 2,

 

 (二)基本操作

1,并

 

 比如:

 

 2,差

 比如:

 

 3,笛卡尔积

 

比如:

 

 

 两个关系的笛卡尔积运算性质如下:

 4,选择(纯关系操作,选择相应的元组)

 

 比如:
  

 

 5,投影(纯关系操作,选择相应的)

 

 比如:

  

 

 6,综合关系代数:

比如选择和投影:

 7,更名操作:也是基本操作,下面例子看不懂先看(三)连接操作

 

 (三)拓展操作(所谓拓展操作是指可以有基本操作组合得到同样的效果,比如后面的连接操作可由笛卡尔积和选择得到)

1,交

 比如:

 2,连接(包括θ连接操作,)

θ连接操作:便利理解可以看做是在两个关系R和S笛卡尔积的基础上进行满足属性Aθ属性B的选择操作,但是实际上连接操作是DBMS直接进行连接的而不必先笛卡尔积,实际上直接连接操作效率会更高些。

  等值连接:特殊的θ连接

 自然连接(多数情况下是这个):特殊的等值连接

  

外连接:解决自然连接元组失配的问题

 

 外连接又可以分为:即哪边外连接就保留哪边丢失的元组

   

  

 

 基本上选择哪一种外连接需要根据需求做出判断

 3,除运算

 

 

 

 

 4,组合操作举例练习:

 

 书写代数运算表达式的基本思路:

 (四)关系代数运算的约束

1,并交差需要满足并相容性

 

 例子如下:

 (五)注意:后面将要学习的SQL其实就是用英语表达出来关系代数的运算。