索引下推
在联合索引中,由于查询条件导致无法使用整个联合索引,但可以使用联合索引中一部分字段可以使用依然使用该索引,就把他们称为有效索引字段
吧,而其它的无效索引的字段作为无效索引查询条件字段
(名字有点长)。
查询时,在存储引擎层,首先根据这些有效索引字段
定位到记录后,然后,直接使用无效索引查询条件字段
的值提前判断该条记录是否符合条件,只有符合条件才返回该条记录的主键。
Server层拿着主键回表查询拿到整条记录,再对依据索引字段以外的其他条件进行判断能否满足条件,满足则返回给客户端。
索引下推将本来需要在Server层处理的工作转移到存储引擎层去处理。(如果没有索引下推,Server每次都需要回表查询,多了很多无意义本来可以提前解决的回表查询)
最终效果:减少了回表查询的次数,提高了查询效率。