1

我正在尝试多种方法来编写相同的查询,但查询缓存干扰了我的工作。

我做了一次查询,大约需要 3.5 秒。我再做一次,它需要 0.015。我稍微更改了 JOIN,但仍然需要 0.015 秒,这让我很难看出哪个更快。

我尝试了以下方法无济于事:

RESET QUERY CACHE;
FLUSH TABLES;

IE。完成这些之后,我的查询仍然需要 0.015 秒。

有任何想法吗?

4

1 回答 1

0

查询优化的第一步是检查执行计划。在大多数情况下,计划越便宜,性能越好。然后,您可能需要检查系统视图(取决于 RDMS)以验证并发问题、物理/逻辑读/写次数等(通常在进行一些负载测试后才有意义)。

您所拥有的执行时间的差异是因为缓存 - 如果您以非常短的间隔运行相同的查询,则第二次查询不会真正执行。

于 2012-12-08T15:18:36.423 回答