| 名称 | 英文 | 标识 |
|---|---|---|
| 选择 | selection | σ (sigma) |
| 投影 | projection | Π (PI大写) |
| 笛卡尔积 | Cartesian Product | × |
| 并集 | union | ∪ |
| 差集 | set difference | - |
| 更名 | rename | ρ (rho) |
| 自然连接 | Natural join | ⋈ |
| 半链接 | Semijoin | ⋉/⋊ |
| 左外链接 | Left outer join | ⟕ |
| 右外链接 | Right outer join | ⟖ |
| 全链接 | Full outer join | ⟗ |
| 除 | Division | ÷ |
一元运算符,选出满足给定的谓词元组,使用的是 =, ≠, >, ≥. <. ≤,另外可以用连词 ∧ (and), ∨ (or), ¬ (not),将多个谓词合并为一个较大的谓词
例子:
表S:
| A | B | C | D |
|---|---|---|---|
| a | a | 1 | 3 |
| a | b | 1 | 5 |
| b | b | 2 | 7 |
| b | b | 3 | 7 |
表达式: δ (A=B) ^ (D>5) (A等于B并且D>5)
| A | B | C | D |
|---|---|---|---|
| b | b | 2 | 7 |
| b | b | 3 | 7 |
一元运算符,返回作为参数关系的某些属性,去除所有重复行
例子:
| A | B | C | D |
|---|---|---|---|
| a | a | 1 | 3 |
| a | b | 1 | 5 |
| b | b | 2 | 7 |
| b | b | 3 | 7 |
表达式:πA,C
| A | C |
|---|---|
| a | 1 |
| b | 2 |
| b | 3 |
投影运算需要在结果集中删除重复行 因重复行被删除
| A | C |
|---|---|
| a | 1 |
例子 r表
| A | B |
|---|---|
| a | 1 |
| b | 2 |
| b | 3 |
s表
| C | D |
|---|---|
| a | 1 |
| b | 3 |
r × s 求笛卡尔积
| A | B | C | D |
|---|---|---|---|
| a | 1 | a | 1 |
| a | 1 | b | 3 |
| b | 2 | a | 1 |
| b | 2 | b | 3 |
| b | 3 | a | 1 |
| b | 3 | b | 3 |
注意:
- 求笛卡尔积时有重复字段必须重命名
二元运算,将两个集合合并起来,会去除重复元组
例子 r表
| A | B |
|---|---|
| a | 1 |
| b | 2 |
| b | 3 |
s表
| A | B |
|---|---|
| a | 1 |
| b | 7 |
r U s 求并集
| A | B |
|---|---|
| a | 1 |
| b | 2 |
| b | 3 |
| b | 7 |
交集的两个条件
- r和s必须有相同的列数
- r和s对应的列类型相同
找出一个关系中而不在另一个关系中的那些元组
例子 r表
| A | B |
|---|---|
| a | 1 |
| b | 2 |
| b | 3 |
s表
| A | B |
|---|---|
| a | 1 |
| b | 7 |
r - s 求差集
| A | B |
|---|---|
| b | 2 |
| b | 3 |
差集的两个条件
- r和s必须有相同的列数
- r和s对应的列类型相同
一元运算,更名运算不是必须的,为了得到具有新名字的一个相同的关系
例子 r表
| A | B |
|---|---|
| a | 1 |
| b | 2 |
| b | 3 |
ρs(r) 将r表更名为s表
s表
| A | B |
|---|---|
| a | 1 |
| b | 2 |
| b | 3 |
例子1 R = (A, B, C, D) S = (E, B, D) Result schema = (A, B, C, D, E)
例子2 r表
| A | B |
|---|---|
| a | 1 |
| b | 2 |
| b | 3 |
s表
| A | C |
|---|---|
| a | j |
| b | q |
r ⋈ s
| A | B | C |
|---|---|---|
| a | 1 | j |
| b | 2 | q |
| b | 3 | q |
r表
| A | B |
|---|---|
| a | 1 |
| b | 2 |
| b | 3 |
s表
| A | C |
|---|---|
| a | j |
| b | q |
r ⋈ s
| A | B | C |
|---|---|---|
| a | 1 | j |
| b | 2 | q |
| b | 3 | q |
θ是在集合{<, ≤, =, >, ≥}中的二元关系
r表
| A | B |
|---|---|
| a | 2 |
| b | 3 |
| b | 4 |
s表
| C | D |
|---|---|
| j | 2 |
| q | 3 |
| k | 4 |
r ⋈ s B>D
| A | B | C | D |
|---|---|---|---|
| b | 3 | j | 2 |
| b | 4 | j | 2 |
| b | 4 | q | 3 |
r表
| A | B |
|---|---|
| a | 1 |
| b | 2 |
| c | 3 |
s表
| A | C |
|---|---|
| a | j |
| b | q |
| e | q |
r ⋉ s
| A | B | C |
|---|---|---|
| a | 1 | j |
| b | 2 | q |
r表
| A | B |
|---|---|
| a | 1 |
| b | 2 |
| c | 3 |
s表
| A | C |
|---|---|
| a | j |
| b | q |
| e | q |
r ▷ s
| A | B |
|---|---|
| c | 3 |
数据库语言SQL所定义的NULL,所以衍生以下链接操作
r表
| A | B |
|---|---|
| a | 1 |
| b | 2 |
| c | 3 |
s表
| A | C |
|---|---|
| a | j |
| b | q |
| e | q |
r ⟕ s
| A | B | C |
|---|---|---|
| a | 1 | j |
| b | 2 | q |
| c | 3 | NULL |
r表
| A | B |
|---|---|
| a | 1 |
| b | 2 |
| c | 3 |
s表
| A | C |
|---|---|
| a | j |
| b | q |
| e | q |
r ⟖ s
| A | B | C |
|---|---|---|
| a | 1 | j |
| b | 2 | q |
| e | q | NULL |
r表
| A | B |
|---|---|
| a | 1 |
| b | 2 |
| c | 3 |
s表
| A | C |
|---|---|
| a | j |
| b | q |
| e | q |
r ⟖ s
| A | B | C |
|---|---|---|
| a | 1 | j |
| b | 2 | q |
| c | 3 | NULL |
| e | q | NULL |
r表
| A | B |
|---|---|
| s1 | p1 |
| s1 | p2 |
| s1 | p3 |
| s1 | p4 |
| s2 | p1 |
| s2 | p2 |
| s3 | p2 |
| s4 | p2 |
| s4 | p4 |
s1表
| B |
|---|
| p2 |
s2表
| B |
|---|
| p2 |
| p4 |
r ÷ s1
| A |
|---|
| s1 |
| s2 |
| s3 |
| s4 |
| r ÷ s2 |
| A |
|---|
| s1 |
| s4 |
- 求和 Sum
- 计数 Count
- 平均 Average
- 最大 Maximum
- 最小 Minimum