oder By是怎么实现的

order by 是怎么实现的

索引排序
  • 索引天然就是有序的,可以直接根据索引进行排序
效率最高的索引排序

+ 根据联合索引进行排序
+ 排序中如limit

  • 索引中常量条件查询中带着where
文件排序
  • 文件排序受sort_buffer_size的影响,如果超过该参数的话就使用文件排序,不然就会在索引中进行排序
  • 还受max_length_for_sort_data的影响。当需要排序的字段太长的时候,就会使用rowid进行排序。不然就会使用全字段进行排序。
  • 全字段进行排序的话只需要进行一次回表查询。根据rowid进行查询的话就需要回表两次进行查询
posted on 2023-10-07 18:17  小连同学ya  阅读(3)  评论(0编辑  收藏  举报