gpt4 book ai didi

php - 1 表查询 vs 连接多表查询性能

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

我想知道下面哪种方法更快?

假设:

  • 最多 10,000 个产品,每个产品有 1 个用户 ID、1 个猫 ID、3 个额外字段和 5 个图片。
  • 90-99% 的用户访问网站只是为了获取信息,而不是发帖。

方法1:通过不使用“JOIN”的查询获取表中的所有数据:

SELECT * FROM products WHERE ...

表:产品

id | name | poster_name | cat_name | code_1 | code_2 | content |
dimensions | contact | message | images |

方法2:通过“JOIN”从多个表中获取所有数据:

SELECT ... FROM products
LEFT JOIN cats ON products.cat_id = casts.id
LEFT JOIN users ON ....

表格:产品

id | name | code_1 | code_2 | content | cat_id | poster_id |
<小时/>

表:猫

id | cat_name |
<小时/>

表:用户

id | poster_name |
<小时/>

表格:额外

id | product_id | extra_info | extra_data |
<小时/>

表:图像

id | product_id | img_src |

最佳答案

第一种方法通常读取速度更快,第二种方法将帮助您维护数据完整性,并且通常写入速度更快。

从后一种形式到前一种形式的过渡称为denormalization通常用于数据仓库,而操作(“实时”)数据库通常更喜欢后者(第二种方法)。

关于php - 1 表查询 vs 连接多表查询性能,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/41191228/

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