我有以下查询:

SELECT vBrowser,iconBrowser, count(iconBrowser) as 'N'
FROM user_ip_tmp  WHERE code='9m9g9tsv2y'
GROUP BY iconBrowser
ORDER BY N DESC
LIMIT 40


这正常工作。但是发狂的原因查询花费了很长时间。

Showing rows 0 - 17 ( 18 total, Query took 4.4189 sec)

最佳答案

WHERE语句中的内容应建立索引。

尝试在EXPLAIN之前使用SELECT语句,以查看用于检索请求结果的内容和方式。

如果code列不是唯一值,我建议将其放在其他唯一的表中。然后通过JOIN使用FOREIGN KEY构建查询。

关于php - 使用GROUP BY和count在结果中优化MySQL查询顺序,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/8279425/

10-09 00:50
查看更多