SELECT uid,COUNT(id) answer_count  
FROM hrclass.`cls_post` 
WHERE clsid = 1001 
 GROUP BY uid 
ORDER BY answer_count DESC  
LIMIT 20 大家看下这条sql,本意是先用户id分组按照获取每个用户发帖数的大小来取前20条:
然而得到的结果却是:
这是为何?
但是如果用子查询就可以达到正确的结果:SELECT * FROM (SELECT uid,COUNT(id) answer_count FROM hrclass.`cls_post` WHERE clsid = 1001  GROUP BY uid ORDER BY answer_count DESC) temp  LIMIT 20
求科普。