MySQL 中的 distinct 和 group by 哪个效率更高?
在语义相同,有索引的情况下group by和distinct都能使用索引,效率相同。在语义相同,无索引的情况下:distinct效率高于group by。原因是distinct 和 group by都会进行分组操作,但group by可能会进行排序,触发filesort,导致sql执行效率低下。基于这个结论,你可能会问:为什么在语义相同,有索引的情况下,group by和distinct效率相同?且在什么情况下,group by会进行排序操作?带着这两个问题找答案。
原创
2023-03-17 10:20:43 ·
474 阅读 ·
0 评论