什么是3个没有共享属性的关系的⟕(左外连接)?

问题描述 投票:-1回答:1

考虑3种关系:r,p和e。

考虑r:

+-------+
| CD RD |
+-------+
|  1 11 |
|  2 22 |
|  3 33 |
+-------+

和p:

+-------+
| PD PR |
+-------+
| 1 U   |
| 2 C   |
| 3 S   |
+-------+

和e:

+---------+
| ED Name |
+---------+
| 1 B     |
| 2 BB    |
| 3 BBB   |
+---------+

什么是r?p?e?令我困惑的是他们没有共享属性。这与笛卡尔积相同吗?

database left-join rdbms relational-algebra cartesian-product
1个回答
0
投票

(RA有很多不同的概念(关系代数),不同的运算符集,不同的运算符定义,以及关系的不同定义.RN启发的查询语言也称为“RA”。这个答案用于典型的RA - 用于自然或theta(受限制的笛卡尔积)内部和外部连接以及与标题集或属性列表的关系。)

阅读左外连接的定义。它返回相应内连接的元组以及由null扩展的每个非参与左关系元组。如果没有用于自然连接的共享属性或用于theta连接的始终为真的条件,则内连接返回左关系元组与右关系元组的每个可能组合。 (这是一个所谓的关系笛卡尔积。)由于每个左关系元组都参与,左外连接中没有额外的元组。因此左外连接与内连接(以及右外连接和内连接)相同,它是笛卡尔积。同样适用于右外连接。全外连接是左外连接和右外连接的并集,因此在这种情况下,所有三个都是相等的。

请注意,对于与标题集合的关系(或忽略与列表标题的关系的列顺序):虽然一般(内部)连接是可交换的(R连接S = S连接R)和关联(R连接(S连接T) )=(R join S)join T),外连接不是。因此,除非您指定应用程序订单,否则没有“3个关系的左外连接”。全外部自然连接是可交换的。如果多个调用位于同一个公共属性集上,则它是关联的。 (然后我们可以谈论“多边关系的左外部自然联接”。)

© www.soinside.com 2019 - 2024. All rights reserved.