文章目录
- 关系运算符
- 笛卡尔积
- 笛卡尔积应用
运算符 | 符号 | 含义 |
---|---|---|
集合运算符 | ||
并 | ∪ | |
交 | ∩ | |
差 | - | |
笛卡尔积 | × | |
专门的关系运算符 | ||
选择 | σ | |
投影 | π | |
连接 | ⋈ | |
除 | ÷ |
关系运算符
笛卡尔积
- 集合运算符中,主要对笛卡尔积做解释:
在数学中,两个集合X和Y的笛卡儿积(英语:Cartesian product)是所有可能的有序对组成的集合,其中有序对的第一个对象是X的成员,第二个对象是Y的成员。
- 两个表的“相乘”时,实际上是指这两个表的笛卡尔积,结果是一个新的表,它的每一行都是由原来两个表中的一行组合形成的二元组的集合。
为了更清晰地理解这一点,我们可以将表视为由行组成的集合
,每一行是一组有序的值。如果表T1有n行,表T2有m行,那么它们的笛卡尔积就是由n * m个二元组组成的集合
,每个二元组由一个来自T1的行和一个来自T2的行组成。 (若三个集合相乘 将得到三元组组成的集合)
例如,如果我们有两个表T1和T2:
表T1:
T1_Col1 | T1_Col2 |
---|---|
1 | a |
2 | b |
表T2:
T2_Col1 | T2_Col2 |
---|---|
3 | c |
4 | d |
表T1和T2的笛卡尔积就是:
T1_Col1 | T1_Col2 | T2_Col1 | T2_Col2 |
---|---|---|---|
1 | a | 3 | c |
1 | a | 4 | d |
2 | b | 3 | c |
2 | b | 4 | d |
在这里,“相乘”的结果是一个新的表,它的每一行都是一个由两个表中各行组合成的二元组。因此,可以说这是所有可能的二元组的集合,每个二元组包含来自两个不同表的行。
如果扩展到更多表的情况下,比如说三个表的笛卡尔积,那么结果将是所有可能的三元组的集合。依此类推,对于任意数量的表,笛卡尔积将是所有可能的相应元组的集合。
【笛卡尔积、自然连接】
笛卡尔积应用
(PowerQuery如何生成笛卡尔积) [https://v.douyin.com/ihnGWq3N/]