MySQL面试题:索引下推是什么?
Index Condition Pushdown(IPC)是MySQL5.6中的新特性,是一种存储引擎层使用索引过滤数据的优化方式
# 假设key1有索引
EXPLAIN SELECT * FROM s1 WHERE key1 > 'z' AND key1 LIKE '%a';
不使用IPC:
通过索引查询到key1>'z’后进行回表,查询到完整记录后再判断后边的like是否满足条件,最后过滤
使用IPC:
在二级索引查询到数据后,直接进行like判断(如果二级索引中包含需要like的字段),并过滤
作用
例如查询时虽然某个字段索引失效无法使用,但是它就在这,对他的判断无须等到回表后再判断,提高效率