gpt4 book ai didi

php - MYSQL 查询优化,比较 3 个表和数千条记录

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

我有这个问题:

SELECT L.sku,L.desc1,M.map,T.retail FROM listing L INNER JOIN moto M ON L.sku=M.sku INNER JOIN truck T ON L.sku=T.sku LIMIT 5;

每个表(listing、moto、truck)都有大约 300.000 行,只是为了测试目的,我设置了 5 个结果的 LIMIT,最后我需要数百个,但让我们看看...

该查询在控制台中大约需要 3:26 分钟...我无法想象使用 PHP 需要多少时间...我需要在那里处理它

有什么优化查询的建议/解决方案吗?谢谢!

最佳答案

这里推荐两件事:

  • 索引
  • 反规范化

当数据库变得庞大时,人们倾向于做的一件事是调用非规范化。这是当您将多个表中的数据存储在一个表中以防止需要执行 join 时。如果您的应用程序依赖于特定的读取来为其提供动力,这将非常有用。这是扩展时常用的策略。

如果 非规范化 是不可能的,另一种更简单的优化此查询的方法是确保您在运行 加入反对。因此列 L.skum.skuT.sku 需要被索引,您会立即注意到性能的提高。

任何其他优化我需要一些有关数据的更多信息,希望对您有所帮助!

关于php - MYSQL 查询优化,比较 3 个表和数千条记录,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32576404/

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