转自:[https://keelii.github.io/2017/02/19/basic-operations-of-relation-algebra/](https://keelii.github.io/2017/02/19/basic-operations-of-relation-algebra/) ## 关系代数运算符 **集合运算符** | 运算符 | 含义 | 英文 | | ------ | -------- | ----------------- | | ∪∪ | 并 | Union | | −− | 差 | Difference | | ∩∩ | 交 | Intersection | | ×× | 笛卡尔积 | Cartesian Product | **比较运算符** | 运算符 | 含义 | | ------ | -------- | | >> | 大于 | | ≥≥ | 大于等于 | | << | 小于 | | ≤≤ | 小于等于 | | == | 等于 | | ≠≠ | 不等于 | **专门的关系运算符** | 运算符 | 含义 | 英文 | | ------ | ---- | ---------- | | σσ | 选择 | Selection | | ππ | 投影 | Projection | | ⋈⋈ | 链接 | Join | | ÷÷ | 除 | Division | **逻辑运算符** | 运算符 | 含义 | | ------ | ---- | | ∧∧ | 与 | | ∨∨ | 或 | | ¬¬ | 非 | ## 5 种基本的关系代数运算 ### 并(Union) 关系 R 与 S 具有相同的关系模式,即 R 与 S 的元数相同(结构相同),R 与 S 的并是属于 R 或者属于 S 的元组构成的集合,记作 R ∪ S,定义如下: R∪S={t|t∈R∨t∈S}R∪S={t|t∈R∨t∈S} ### 差(Difference) 关系 R 与 S 具有相同的关系模式,关系 R 与 S 的差是属于 R 但不属于 S 的元组构成的集合,记作 R − S,定义如下: R−S={t|t∈R∨t∉S}R−S={t|t∈R∨t∉S} ### 广义笛卡尔积(Extended Cartesian Product) 两个无数分别为 n 目和 m 目的关系 R 和 S 的 笛卡尔积是一个 (n+m) 列的元组的集合。组的前 n 列是关系 R 的一个元组,后 m 列是关系 S 的一个元组,记作 R × S,定义如下: R×S={t|t=<(tn,tm)∧tn∈R∧tm∈S}R×S={t|t=<(tn,tm)∧tn∈R∧tm∈S} (tn,tm)(tn,tm) 表示元素 tntn 和 tmtm 拼接成的一个元组 ### 投影(Projection) 投影运算是从关系的垂直方向进行运算,在关系 R 中选出若干属性列 A 组成新的关系,记作 πA(R)πA(R),其形式如下: πA(R)={t[A]|t∈R}πA(R)={t[A]|t∈R} ### 选择(Selection) 选择运算是从关系的水平方向进行运算,是从关系 R 中选择满足给定条件的元组,记作 σF(R)σF(R),其形式如下: σF(R)={t|t∈R∧F(t)=True}σF(R)={t|t∈R∧F(t)=True} ## 实例 设有关系 R、S 如图所示,求 R∪SR∪S、 R−SR−S、 R×SR×S、 πA,C(R)πA,C(R)、 σA>B(R)σA>B(R) 和 σ3<4(R×S)σ3<4(R×S) ![关系表RS](../../../../ff_internal_upload/img/2021/58a95fceNddd39fd7.png) 进行并、差运算后结果如下: ![并差](../../../../ff_internal_upload/img/2021/58a967b1N42db123f.png) 进行笛卡尔、 投影、 选择运算后结果如下: ![笛卡尔_投影_选择](../../../../ff_internal_upload/img/2021/58a9685dN20af0b9b.png) ## 扩展的关系代数运算 ### 交(Intersection) 关系 R 和 S 具有相同的关系模式,交是由属于 R 同时双属于 S 的元组构成的集合,记作 R∩S,形式如下: R∩S={t|t∈R∧t∈S}R∩S={t|t∈R∧t∈S} ### 链接(Join) 注:下面的 θ 链接应该记作:![theta链接](../../../../ff_internal_upload/img/2021/58aa580aNe9908740.png) #### θ 链接 从 R 与 S的笛卡尔积中选取属性间满足一定条件的元组,可由基本的关系运算笛卡尔积和选取运算导出,表示为: R⋈XθYS=σXθY(R×S)R⋈XθYS=σXθY(R×S) XθY 为链接的条件,θ 是比较运算符,X 和 Y 分别为 R 和 S 上度数相等且可比的属性组 例如:求 R⋈R.A