开发者社区> 问答> 正文

mysql count+in+group by+limit 如何提高效率问题?

今天执行了如下一个语句超级慢,居然用了200多秒,一共才312100条记录,索引都建了,请大家分析一下原因
`select mblog_location_prov,count(*) as c from t_mblog as t
where 1=1 and t.mblog_user_id in (2013236575,1928775425,1914085333,1768349913,1807425655,1829037511,1958955537)
GROUP BY t.mblog_location_prov ORDER BY c desc LIMIT 0,4 `

展开
收起
落地花开啦 2016-02-06 17:44:53 2837 0
1 条回答
写回答
取消 提交回答
  • 喜欢技术,喜欢努力的人

    count(*) 改成 count(1)
    in 优化的话 改成 and (mblog_user_id =2013236575 or mblog_user_id =1928775425 .....)
    这种结构 可以使用索引

    2019-07-17 18:38:36
    赞同 展开评论 打赏
问答排行榜
最热
最新

相关电子书

更多
One Box: 解读事务与分析一体化数据库 HybridDB for MySQL 立即下载
One Box:解读事务与分析一体化数据库HybridDB for MySQL 立即下载
如何支撑HTAP场景-HybridDB for MySQL系统架构和技术演进 立即下载

相关镜像