回表
从二级索引回到主键索引树搜索的过程,我们称为回表。
覆盖索引
如果执行的语句是select ID from T where k between 3 and 5,这时只需要查ID的值,而ID的值已经在k索引树上了,因此可以直接提供查询结果,不需要回表。也就是说,在这个查询里面,索引k已经“覆盖了”我们的查询需求,我们称为覆盖索引。 覆盖索引可以减少树的搜索次数,显著提升查询性能
最左前缀原则
索引项是按照索引定义里面出现的字段顺序排序的。 只要满足最左前缀,就可以利用索引来加速检索。
原则:
- 第一原则是,如果通过调整顺序,可以少维护一个索引,那么这个顺序往往就是需要优先考虑采用的。
- 考虑的原则就是空间
索引下推优化
索引下推优化(index condition pushdown), 可以在索引遍历过程中,对索引中包含的字段先做判断,直接过滤掉不满足条件的记录,减少回表次数。