gpt4 book ai didi

mysql查询速度

转载 作者:可可西里 更新时间:2023-11-01 08:08:32 27 4
gpt4 key购买 nike

我只想问一下,这两种存储数据的方式中哪一种会给我更好的结果

一个。将数据存储在包含 20 多个列的单个表中

B.将数据分布到两个表中,每个表有 15 列和 6 列

还有一件事,即使我分发了数据,在 60% 的情况下我仍然可能必须同时访问两个表...

那么,两者中哪一个是最好的选择...

谢谢

最佳答案

JOIN,即使是在 PRIMARY KEY 上,也需要数倍于顺序扫描的时间。

当然,看到表格会更好,但我有根据的猜测是,将它们放在一起会更好。

如果要拆分的列很小且基数很高(很多不同的值),则将它们保留在表中。

但是,如果您所做的是规范化(而不是单纯的表拆分),那么规范化设计会更快。

例如,如果您的数据如下所示:

id  value

1 Really really long value 1
2 Really really long value 1
3 Really really long value 1

1000 Really really long value 2
1001 Really really long value 2
1002 Really really long value 2

,扫描这个表需要很长时间,因为值很大。

规范化表格将得到以下结果:

id  value

1 1
2 1
3 1

1000 2
1001 2
1002 2


val_id value
1 Really really long value 1
2 Really really long value 1

扫描 4 字节整数行比千字节 VARCHAR 快得多,即使有额外的 加入

关于mysql查询速度,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1212594/

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