1、使用索引的已有顺序

2、filesort算法

  filesort算法的执行流程
   

 

filesort相关的参数

sort_buffer_size 
算法排序缓冲区的大小,线程级缓存 
max_length_for_sort_data

决定选择那种不同的策略进行排序(两种排序算法)

1、single-pass算法(rowid排序) 

当查询语句所取出的所有字段的长度大于max_length_for_sort_data,第一次从表中取出排序字段和行指针,第二次根据排好序的行指针从表中取出其它字段的值。优点行数据进行了压缩,缺点需要两次访问表数据

2、two-pass算法(全字段排序) 

当max_length_for_sort_data小于查询语句所取出的所有字段的长度,一次性从表中取出所查询的所有字段,在排序缓冲区中进行排序操作。优点只访问了一次表数据,缺点数据没有进行压缩,会耗用更多排序缓冲区的空间

最新文章

  1. 使用UITableView展示数据
  2. 【Win10 应用开发】OCR识别
  3. Android 学习第16课,java 包、类等相关的一些基础知识
  4. WINDOWS系统下四叶草CLOVER引导U盘制作
  5. MySQL物理文件组成
  6. oracle系列--第三篇 Oracle的安装
  7. js TAb
  8. Visual Leak Detector 2.2.3 Visual C++内存检测工具
  9. hhtml from表单为什么能提交数据
  10. new Date()在IE,谷歌,火狐上的一些注意项
  11. django初探
  12. mrql初级教程-使用(er)
  13. 圆形的ImageView
  14. 解决angularjs 在ie8上面 ng-repeat的select控件兼容性问题
  15. css -html-文档流
  16. fiddler使用指南
  17. Linux基础命令---pgrep
  18. JavaScript 片段
  19. RabbitMQ 知识点
  20. Android ListView的XML属性

热门文章

  1. 对 Service中sqlsession对象的优化
  2. 747. Largest Number At Least Twice of Others
  3. 2019.01.19 洛谷P2787 语文1(chin1)- 理理思维(ODT)
  4. OpenCV(2):视频
  5. jQuery警告/确认/提示弹出对话框效果(替换传统JavaScript下的提示框)
  6. 谈谈thinkphp5.1中容器(Container)和门面(Facade)的实现
  7. mysql only_full_group_by报错的问题(转)
  8. php常量 const 和 define
  9. C++指针二(易错模型)
  10. 简述NotificationCenter、KVC、KVO、Delegate?并说明它们之间的区别?