2016-11-23 164 views
0

我有以下SELECT运行在一秒钟内,如果我在最后删除ORDER BY。使用ORDER BY,它在大约9秒内运行。MySQL缓慢查询 - 排序通过

我有一个出众的理解,像'<>'比较运算符等其他SQL命令可以对ORDER BY有不利影响。

我试过注释掉线条,可以改善性能,用ORDER BY说2-3秒,但仍然没有ORDER BY它更像1秒钟。

有人可以给我一些好的建议,如何更好地写这个查询,什么以避免等?所有的建议非常感谢。

三江源

+0

可以请你从发布结果**说明你查询**?结果集中有多少条记录? –

回答

1

请尝试:

SELECT * FROM (
    SELECT .. // Your old Query without GROUP BY and LIMIT 
    ... 
) AS tmp 
ORDER BY heartbeat DESC 
LIMIT 120; 
+0

@Adam - 你为什么删除**)和ORDER BY .. **这对你查询很重要吗? –

+0

这个解决方案真的有帮助吗?或者是缓存填充,所以它看起来更快。 –