Mysql优化group by的优化

x33g5p2x  于2021-03-14 发布在 Mysql  
字(0.4k)|赞(0)|评价(0)|浏览(734)

由于GROUP BY 实际上也同样会进行排序操作,而且与ORDER BY 相比,GROUP BY 主要只是多了排序之后的分组操作。当然,如果在分组的时候还使用了其他的一些聚合函数,那么还需要一些聚合函数的计算。所以,在GROUP BY 的实现过程中,与 ORDER BY 一样也可以利用到索引。

1).如果查询包含 group by 但是用户想要避免排序结果的消耗, 则可以执行order by null 禁止排序。如下 :

drop index idx_emp_age_salary on emp;
explain select age,count(*) from emp group by age;

优化后

explain select age,count(*) from emp group by age order by null;

2) 使用索引 :

create index idx_emp_age_salary on emp(age,salary);

相关文章

微信公众号

最新文章

更多