use filesort排序,字面上理解是外部排序。html
百度上多被你们否认不是外部排序,认为和file这个关键字不要紧。用的是快速排序。可是总以为不可能这么平白无故叫filesort的,因而去官网查了下。mysql
官方解释git
果真,你们认为的只有一半,正解是上面两种都有,use filesort会在内存中排序,可是若是结果集过大不能使用内存就会使用外部排序。(不管filesort底层用的哪一种排序都是额外的排序,只不过内存排序比外部排序快一点,都须要优化sql啦~,这里只探究filesort原理)github
直接访问github地址https://github.com/mysql/mysql-server/进行下载或直接查看sql
也能够去官网下载,和下载mysql包同样,不赘述,只须要在最后一步中Select Operating System选择Source Code优化
抛砖引玉~由各位大佬分析一波~~~(悄悄的告诉大家,我压根就找不到排序的c文件在哪...)spa
~~~~~~server
原创,转载请注明来源,翻版必究htm