【问题标题】:Execute more or complicated SQL queries, or use PHP to filter data?执行更多或更复杂的 SQL 查询,还是使用 PHP 过滤数据?
【发布时间】:2013-06-18 15:27:37
【问题描述】:

我正在构建一个 PHP 应用程序,它将获得大量流量。我一直都知道我应该限制 SQL 查询的数量(现在每个访问者大约 15 个)。我可以将其限制为大约一半,使用 PHP 过滤和排序数据,但这会更快吗?或者,我可以在查询中使用“JOIN”来减少查询数量,但这真的比执行多个查询更快吗?谢谢!

【问题讨论】:

  • 在数据库中执行此操作,但前提是您阅读了很多关于表格的“索引”。
  • 每个访问者每页 15 个 sql 查询?天哪。

标签: php mysql sql database performance


【解决方案1】:

如果您的每位访问者有 15 个查询,那么您很可能做错了什么,除非您的应用程序非常大。

使用 PHP 代替 MySQL 对数据进行排序和过滤

在 PHP 中进行排序和过滤不会使您的应用程序更快,它肯定会使其变慢,MySQL 已优化为在正确的索引下非常快,因此您当然应该尽可能使用它。

了解数据库索引,它将使您的生活更轻松并提高应用程序的性能。这是一个链接:

http://www.mysqltutorial.org/mysql-create-drop-index.aspx

加入与多个查询

您问使用联接是否比执行多个查询更快。

答案是肯定的,只要有正确的索引,使用连接总是会更快。这也回到了第一个主题,索引。

但是,请记住,加入会尽可能高效,如果做得好,效率会非常高,如果做错会非常慢,因此您必须了解正确操作的基础知识。

您可以在这里查看加入的介绍:

http://blog.sqlauthority.com/2009/04/13/sql-server-introduction-to-joins-basic-of-joins/

【讨论】:

    猜你喜欢
    • 2021-02-22
    • 1970-01-01
    • 2011-10-16
    • 1970-01-01
    • 2015-07-02
    • 1970-01-01
    • 1970-01-01
    • 2016-11-21
    • 1970-01-01
    相关资源
    最近更新 更多