MySQL的GROUP BY怎么优化,GROUP BY进行了隐式排序,怎么禁止隐式排序

EXPLAIN证明GROUP BY进行了隐式排序

EXPLAIN SELECT NAME FROM student GROUP BY NAME

在这里插入图片描述
可以看到Extra一列有Using temporary; Using filesort说明用到了临时表和排序

接下来我们通过添加ORDER BY NULL禁止排序

EXPLAIN SELECT NAME FROM student GROUP BY NAME ORDER BY NULL

在这里插入图片描述
可以看到现在只用到了临时表,没有进行排序了

所以在需要分组并不需要对结果进行排序的情况下,我们可以禁止隐式排序

猜你喜欢

转载自blog.csdn.net/weixin_43073775/article/details/121269424