丁奇MYSQL45讲归纳-5

85 阅读1分钟

回表

从二级索引回到主键索引树搜索的过程,我们称为回表

覆盖索引

如果执行的语句是select ID from T where k between 3 and 5,这时只需要查ID的值,而ID的值已经在k索引树上了,因此可以直接提供查询结果,不需要回表。也就是说,在这个查询里面,索引k已经“覆盖了”我们的查询需求,我们称为覆盖索引。 覆盖索引可以减少树的搜索次数,显著提升查询性能

最左前缀原则

索引项是按照索引定义里面出现的字段顺序排序的。 只要满足最左前缀,就可以利用索引来加速检索。

原则:

  • 第一原则是,如果通过调整顺序,可以少维护一个索引,那么这个顺序往往就是需要优先考虑采用的。
  • 考虑的原则就是空间

索引下推优化

索引下推优化(index condition pushdown), 可以在索引遍历过程中,对索引中包含的字段先做判断,直接过滤掉不满足条件的记录,减少回表次数。