gpt4 book ai didi

relational-algebra - 关系代数中的笛卡尔积

转载 作者:行者123 更新时间:2023-12-02 16:10:59 31 4
gpt4 key购买 nike

我是关系代数的初学者,我无法完全理解笛卡尔积的工作原理。

我想知道当我的两个表具有共同属性时笛卡尔积会发生什么。当两个表没有任何共同属性时,我可以毫无疑问地理解。

例如,我试图理解我自己制作的示例。

T1                          T2
---------- -----------
A B C A B D
1 4 7 1 4 8
2 5 3 2 9 5
4 7 1 7 3 2

如果我想做 T1 x T2,当我想编写 T1 第一行 A=1 , B=4 , C=7 和第二行的串联的行时T2 行 A=2 ,B=9 ,C=5 ,A 列和 B 列发生了什么?

如果你能告诉我 T1 x T2 的结果,那将非常有用!

最佳答案

编辑:如评论部分所述。我正在编辑这个答案,以便正确理解这个问题。

由于这可能是重复的,请参阅此链接: Cartesian products of tables that contains same columns

首先,这取决于您使用的代数。对于某些代数,笛卡尔积可以在具有共同属性的表之间完成,类似于交叉联接,而在其他代数上不允许笛卡尔积,因此您必须重命名属性。

p.s:查找交叉联接,因为它们类似于笛卡尔积,但没有联接条件,请查看示例表交叉联接的预期结果:

    T1                      T2                T1 X T2
---------- ----------- = ----------------------------
A B C A B D T1.A T1.B T1.C T2.A T2.B T2.D
1 4 7 1 4 8 1 4 7 1 4 8
2 5 3 2 9 5 1 4 7 2 9 5
4 7 1 7 3 2 1 4 7 7 3 2
2 5 3 1 4 8
2 5 3 2 9 5
2 5 3 7 3 2
4 7 1 1 4 8
4 7 1 2 9 5
4 7 1 7 3 2

引用链接:What is the difference between Cartesian product and cross join?

另外,我强烈建议您检查一下并亲自尝试一下!

RelaX - 关系代数计算器 http://dbis-uibk.github.io/relax/index.htm

关于relational-algebra - 关系代数中的笛卡尔积,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/46321540/

31 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com