数据库table垂直分区时,分区后的table和分区前的table有什么关系?

When a database table is vertically partitioned, what is the relationship between the partitioned table and the table before partitioning?

在学习数据库相关内容时,遇到了以下问题:

When table R is vertically partitioned into R1, R2, R3..., Rn, it is said that it can be expressed as R = R1R2R3...⋈Rn. ( is the join symbol)

但是,如果在没有任何特殊条件的情况下使用连接符号,它就会变成笛卡尔积,那么这不会导致比原始 table R 多得多的元组吗?您能否解释一下为什么现有 table 表示为分区 table 的连接?

该运算符表示自然连接。见 https://en.m.wikipedia.org/wiki/Relational_algebra:

Natural join (⋈) is a binary operator that is written as (R ⋈ S) where R and S are relations.[2] The result of the natural join is the set of all combinations of tuples in R and S that are equal on their common attribute names.

⋈ 是自然连接。 (当与 2 个关系参数一起使用且没有其他参数时。)当没有公共列时,自然连接是笛卡尔积。但是在引用中假设分区已经完成,所以有一组键值供所有 table 使用。所以笛卡尔积没有出现。每个分区都有相同的行数和相同的键内容,并且它们在附加列内容上有所不同。每个连接都会添加一些额外的列数据,直到您取回原始 table.