MySQL-mysql中group by实现原理是什么
CREATE TABLE `tb` (
`c` INT(11) DEFAULT NULL,
`d` INT(4) DEFAULT NULL,
`e` VARCHAR(1000) DEFAULT NULL
) ENGINE=INNODB DEFAULT CHARSET=utf8;
INSERT INTO tb VALUES(2,20,'b');
INSERT INTO tb VALUES(1,10,'a');
INSERT INTO tb VALUES(2,20,'b');
INSERT INTO tb VALUES(1,10,'a');
INSERT INTO tb VALUES(3,30,'c');
EXPLAIN SELECT c,COUNT(*) FROM tb GROUP BY c
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(2)
group by实际上也同样会进行排序操作,而且与order by相比,group by主要只是多了排序之后的分组操作。当然,如果在分组的时候还使用了其他的一些聚合函数,那么还需要一些聚合函数的计算。所以,在group by的实现过程中,与order by一样也可以利用到索引。
今天看google reader,发现这篇文章MySQL数据库中group by的实现
希望对你有用!