你的浏览器不支持本网站所要求的功能, 现在看到的是本网站简化版本.

为了获得最佳体验, 请使用最新的Chrome, Safari, Firefox 或 Edge 浏览器.

2. 关系数据库

2.4 关系代数

Powered by impress.js
Ver. 2408

### 集合运算 - 并 (Union) - 交 (Intersection) - 差 (Except) - 笛卡尔积 (Cartesian Product)
### 并运算 - 将两个关系的元组合并为一个关系 - 表示为 $R \cup S$ - $R \cup S = \lbrace t | t \in R \bigvee t \in S \rbrace$ - 运算的两个关系需要具有相同的属性集合
### 交运算 - 取两个关系的共有元组 - 表示为 $R \cap S$ - $R \cap S = \lbrace t | t \in R \bigwedge t \in S \rbrace$ - 运算的两个关系需要具有相同的属性集合
### 差运算 - 从一个关系中排除另一个关系中的元组 - 表示为 $R - S$ - $R - S = \lbrace t | t \in R \bigwedge t \notin S \rbrace$ - 运算的两个关系需要具有相同的属性集合
### 笛卡尔积运算 - 将两个关系的元组组合 - 表示为 $R \times S$ - $R \times S = \lbrace \overset{\frown} {t\_r t\_s} | t\_r \in R \bigwedge t\_s \in S \rbrace$ - 运算的两个关系可以具有不同的属性集合
### 关系运算 - 选择 (Selection) - 投影 (Projection) - 连接 (Join) - 除 (Division)
### 基本约定一 - 设关系模式为 $R(A\_1, A\_2, \cdots, A\_n)$, 它的一个关系设为 $R$ - $t \in R$ 表示 $t$ 是 $R$ 的一个元组 - $t[A\_i]$ 表示元组 $t$ 在属性 $A\_i$ 上的一个分量
### 基本约定二 - 若 $A = \lbrace A\_{i1}, A\_{i2}, \cdots, A\_{ik} \rbrace$, 其中 $A\_{i1}, A\_{i2}, \cdots, A\_{ik}$ 是 $A\_1, A\_2, \cdots, A\_n$ 中的一部分, 则 $A$ 称为属性列或属性组 - $t[A] = \lbrace t[A\_{i1}], t[A\_{i2}], \cdots, t[A\_{ik}] \rbrace$ 表示元组 $t$ 在属性集合 $A$ 上诸分量的集合 - $\bar{A}$ 表示属性集合 $A$ 的补集,即 $\bar{A}$ 为 $\lbrace A\_1, A\_2, \cdots, A\_n \rbrace$ 中去掉 $\lbrace t[A\_{i1}], t[A\_{i2}], \cdots, t[A\_{ik}] \rbrace$ 后剩余的属性组
### 基本约定三 - $R$ 为 $n$ 目关系, $S$ 为 $m$ 目关系, $t\_r \in R$, $t\_s \in S, \overset{\frown} {t\_r t\_s}$ 称为元组的连接 (concatenation) 或串接 - $\overset{\frown}{t\_r t\_s}$ 是一个 $n + m$ 目元组, 前 $n$ 个分量为 $R$ 中的一个 $n$ 元组, 后 $m$ 个分量为 $S$ 中的一个 $m$ 元组
### 基本约定四 - 给定一个关系 $R(X,Z), X$ 和 $Z$ 为属性组, 当 $t[X] = x$ 时, $x$ 在 $R$ 中的象集 (images set) 定义为 - $Z\_x = \lbrace t[Z] | t \in R, t[X] = x \rbrace$ - $Z\_x$ 是 $R$ 中所有满足 $t[X] = x$ 的元组在属性组 $Z$ 上的分量的集合
### 选择 - 从关系中选择满足特定条件的元组 - 表示为 $\sigma_{condition}(R)$ - $\sigma$ 是选择运算符 - $condition$ 是谓词条件 - $R$ 是待选择的关系 - $\sigma\_F(R)$ 表示选择满足条件 $F(t)$ 为真的元组 $t$ - 选择是行运算
### 投影 - 从关系中选择指定的属性列 - 表示为 $\Pi_{A\_1, A\_2, \cdots, A\_n}(R)$ - $\Pi$ 是投影运算符 - $A\_1, A\_2, \cdots, A\_n$ 是待投影的属性列 - $R$ 是待投影的关系 - 投影是列运算
### 连接 - 组合两个关系中的元组 - 基于某个属性的值匹配 - 表示为 $R \mathop{\bowtie}\limits_{A\theta B}S$ - $\mathop{\bowtie}\limits_{A\theta B}$ 是连接运算符 - $R$ 和 $S$ 是待连接的关系 - 也称为 $\theta$ 连接, $\theta$ 是连接条件 - 连接运算从 $R$ 和 $S$ 的笛卡儿积 $R \times S$ 中选取 $R$ 关系在 $A$ 属性组上的值与 $S$ 关系在 $B$ 属性组上的值满足比较运算符 $\theta$ 的条件的元组
### 等值连接 - 基于指定的等值条件连接两个关系 - 表示为 $R \mathop{\bowtie}\limits_{A = B}S$
### 自然连接 - 一种特殊的等值连接 - 自动匹配具有相同属性名称的属性组 - 删除重复的属性列 - 记作 $R \bowtie S$
### 除 - 从关系 $R$ 中选择满足某个条件的元组 - 并删除与关系 $S$ 中对应属性的值不匹配的元组 - 表示为 $R \div S$ - $\div$ 是除运算符 - $R$ 和 $S$ 是待操作的关系
![course 2.4 mindmap](img/c02/mindmap-2-4.png)
### 2.4 关系代数 - 交运算需要的两个关系有什么特别要求? - 笛卡尔积运算的关系是否需要有相同属性集合? - 请解释元组的连接. - 什么是选择运算? - 连接运算如何工作? ---- [ 2.3 关系的完整性](dbds-2-3.html#/overview) [| 练习 |](dbds-exec.html) [ 3.1 SQL 概述](dbds-3-1.html#/overview)

黑公网安备23010302001726号   黑ICP备2024033110号-1