P165上写的在整个语句后加个ORDER BY null可以避免filesort操作。 我想知道这样做的背后MySQL是用了什么算法? 我想的话,比较快捷的方法可能就是Hash了,把要分组的列顺序扫描,算HashKey存入HashTable,如果HashKey位置在HashTable中已经有了说明可以并到一个组,通过链表链在后面。这样就是可能HashKey会有重复,需要二次探查法或其他方法来避免冲突。 其他算法实现不排序分组我还没想到,不知道MySQL是怎么实现的。Sky能讲解一下或提供一篇可靠的文章么?
对于MySQL具体算方相关的大概内容可以从 MySQL Internal 文档上了解一个大概,但不管从什么文档上都不可能有一个详细的算法介绍,我本人也并没有进行非常详细的算法了解。所以如果是对算法感兴趣,可能还是需要读者朋友自行研究 MySQL 代码了。
以下是 MySQL 重要算法的介绍文档: http://forge.mysql.com/wiki/MySQLInternalsAlgorithms#ImportantAlgorithmsand_Structures
您正在浏览的问题含有以下标签:
mysql × 5
提问时间: 9 months, 1 week前
目前浏览数量:394 次
最后更新时间:7 months, 3 weeks前
MySQL在drop database时候不会清除所有信息吗?
Group By的不排序的算法是怎么做的?
大家 MySQL 的主要运行环境是什么?
《MySQL性能调优与架构设计》此书是基于MySQL哪个版本编写的?
P112 不是很明白帮忙请解释下