加速 - 一页上有多个MySQL查询

时间:2012-12-06 00:02:41

标签: mysql optimization

所以我有一个房地产网站。我有一个页面,运行大约5个查询来构建统计页面。我想知道是否有办法加快速度,或优化或组合查询,以便它运行得更快。现在,运行页面需要5秒钟。

查询:

SELECT   COUNT(`listing_num`) as `count`,
         AVG(`price`),
         AVG(`square_feet`),
         AVG(`bedroom_total`),
         AVG(`bathroom_total`),
         MIN(`price`),
         MAX(`price`),
         MIN(`square_feet`),
         MAX(`square_feet`),
         MIN(`bathroom_total`),
         MAX(`bathroom_total`),
         MIN(`bedroom_total`),
         MAX(`bedroom_total`),
         MIN(`psf`),
         MAX(`psf`),
         AVG(`psf`)
FROM     `Res_Active2`
WHERE    `status` != 'S'

因此,我在页面上运行此查询大约6次,每次更改WHERE子句,以便我可以显示已售出属性,活动属性,合同属性等的统计信息。

正确的方法和快速的方法是什么?我可以使用缓存,结合sql,什么?我需要加快这个页面的速度。感谢。

1 个答案:

答案 0 :(得分:0)

尝试只设置mysql查询缓存。它只会执行一次并在所有其他查询中重用结果。 要启用mysql缓存,请参阅mysql cache

我很确定你只需添加你的/etc/my.conf

query_cache_size=30M

如果没有帮助,您可以创建一个特殊的表,其中包含该查询的结果,并且每隔X分钟由外部脚本更新该结果。