SELECT u.company, u.zy, u.tel, u.user, m.uptime
FROM mm_info m
LEFT JOIN (
mm_user u
) ON ( m.userid = u.userid )
WHERE m.catid != ''
AND u.zy != ''
GROUP BY m.userid
ORDER BY m.uptime DESC
LIMIT 0 , 39
这需要(39 总计, 查询花费 1.9012 秒)
但去了GROUP by语句后只需要(39 总计, 查询花费 0.2298 秒).
mm_info和mm_user的Userid我都做的索引.
求助..有没有别的方法..我需要分组Userid
FROM mm_info m
LEFT JOIN (
mm_user u
) ON ( m.userid = u.userid )
WHERE m.catid != ''
AND u.zy != ''
GROUP BY m.userid
ORDER BY m.uptime DESC
LIMIT 0 , 39
这需要(39 总计, 查询花费 1.9012 秒)
但去了GROUP by语句后只需要(39 总计, 查询花费 0.2298 秒).
mm_info和mm_user的Userid我都做的索引.
求助..有没有别的方法..我需要分组Userid
FROM mm_info m
LEFT JOIN (
mm_user u
) ON ( m.userid = u.userid )
WHERE m.catid != ''
AND u.zy != ''
GROUP BY m.userid
ORDER BY m.uptime DESC
LIMIT 0 , 39;
show index from mm_info;
show index from mm_user;以供别人进一步分析。
想问问各位有没有什么优化手段.
如果是max(m.uptime)我可以理解,但是没有看到sum/max什么的,而且理论上mm_user也不可能重复,所以,貌似没有必要使用group by啊。
+1
没有explain 分析不了
另外你的索引信息给出,你这个语句的几个地方加索引可能还比不加的小女差,多多分析
谢谢各位..我是通过explain 分析原因了..是因为我的索引和主键一起索了..结果就没用到索引..
现以更新.谢谢各位!