搜索方法,将连接拆分为多个查询?

时间:2013-07-12 08:16:35

标签: mysql join

我正在寻找一些争论,为什么将连接拆分为单个查询会更好/更差,然后立即运行所有连接的单个查询。我在PHP / MySQL环境中工作。

假设所有表都正确配置了索引,我确信多个查询将比单个查询慢。

无论如何,当我正在寻找专业人士和骗子时,我会在下面列出我发现的内容,并且会对其他人的反馈非常感兴趣。

单一查询:

[pro] Mysql能够优化查询

[pro]减少网络流量

[pro]使用mysql

更容易排序和限制结果

[pro] MySQL可以做它擅长的事情

[con]大查询

多个查询:

[pro]较小的查询

[con]在缩小结果时需要循环遍历大量的结果集(PHP)

[con]分页变得痛苦

[con] PHP中需要更复杂的代码

我的感觉是单个查询更好/更快但也可能取决于具体情况。这些表很简单,我们在交叉表上也有一些父/子连接和一些匹配的查询。最大的表是大约20万条记录。

另一个让我在这里的想法是MySQL连接在关于过滤记录时是可以的,但是当您拥有产品和产品类型时,产品类型将加载另一种机制,该机制将缓存所有产品类型,例如这样你也不需要加入产品类型。

0 个答案:

没有答案