什么比这更快?单独的mysql查询或数组重新排列?

时间:2011-10-27 03:11:06

标签: php mysql performance optimization

在我的许多脚本中,我处理来自mysql查询的相同结果。 我总是想知道它是否值得'工作'只是为了重新安排我的结果,所以我可以更舒适地迭代它或者如果我不打扰做一个单独的mysql调用。

我有四个例子,可能会得到不同的答案:

  • 首先,我有一个包含5列数据的数组。在一个功能我 遍历每一行。在我的其他功能中我只需要 一个(随机)行,只有2个字段。
  • 在另一个例子中,我需要两个函数中的所有行,但是在其中一个函数中 他们需要一个领域作为我需要的另一个领域的关键 检查随机字符串/ int的外观。
  • 在我的上一个例子中,我基本上需要查询我的一个函数。其他功能只需要少一列。
  • 还有另外一种可能性,我只是想知道从另一个表中加入一行然后在php中处理它是否会更快,或者我是否应该为此做出第二次查询。

您可能会说它将取决于数据库大小,但我们假设我在大约200行的数据库中执行所有这些示例。

最后要说的是,我知道我需要以一种良好的可读性方式进行编码,但是我感觉最有条理,但这个理论问题只是让我感到烦恼而且我总是想知道是否存在差异,其他人如何处理这样的事情。

1 个答案:

答案 0 :(得分:-1)

我怀疑这是一个“我不知道”的问题。

就像“我让我的车颠倒了,我想知道如何更快地驾驶它”问题。首先,你必须以正常的方式,并学习驾驶的基本知识。

在询问“哪种方式更快”之前,必须先询问“哪种方式正确”。
在使用“优化”标记标记他们的问题之前,必须有一个某个问题,需要进行优化。

作为一般规则,数据库包含所有数据以及完成过滤排序数据的所有工作。
因此,您必须使用SQL命令以所需顺序检索所需数据。

作为一种常识规则,如果您已经拥有它,则无需再次检索相同的数据。

除了这两个非常基本的陈述之外,我不知道该怎么回答。