gpt4 book ai didi

mysql - 对两个表进行分区的最佳策略是什么?

转载 作者:行者123 更新时间:2023-11-29 11:07:00 24 4
gpt4 key购买 nike

我想对 2 个表进行分区,即 table1(a1,b1)table2(a2,b2),其中 a1a2 是两个表的主键。那么对这两个表进行分区以支持查询的最佳策略应该是什么:

SELECT * FROM table1, table2 WHERE table1.a1 = table2.a2

其他信息

基于该分区策略,我还想决定使用哪个联接来有效运行以下查询:

SELECT * FROM table1, table2 WHERE table1.a1 = table2.b2

最佳答案

在 MySQL 中,PARTITION 是一种基于某些键水平拆分表的特殊技术。这不是您所描述的。

“垂直分区”是一个松散应用的术语,更接近您似乎正在做的事情。它是指将“应该”是单个表的列分成两个表,并且这些表以 1:1 关系链接。你们通过他们的主键建立了这样的关系。

您的查询是执行将列重新组合在一起所需的 JOIN 的示例。 (@Maxim 对查询的重新表述更好;您应该使用它。)

很少有必要对表进行垂直分区。请解释一下你为什么要这样做。我们可以讨论您的情况是否合理。首先为两个表提供 SHOW CREATE TABLE

关于mysql - 对两个表进行分区的最佳策略是什么?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/41231215/

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