一、解决方法
如果你希望使用 group by 语句的时候避免出现 filesort, 那么只需在其后追加 order by null 语句即可, 即:
group by ... order by null
二、说明
1、默认情况下,mysql在使用group by之后,会产生临时表,而后进行排序(此处排序默认是快排),这会消耗大量的性能。
2、group by本质是先分组后排序【而不是先排序后分组】。
3、group by column 默认会按照column分组, 然后根据column升序排列; group by column order by null 则默认按照column分组,然后根据标的主键ID升序排列