自MySQL 5.6开始,在索引方面有了一些改进,比如索引条件下推(Index condition pushdown,ICP),严格来说属于优化器层面的改进。...如果简单来理解,就是优化器会尽可能的把index condition的处理从Server层下推到存储引擎层。...举一个例子,有一个表中含有组合索引idx_cols包含(c1,c2,…,cn)n个列,如果在c1上存在范围扫描的where条件,那么剩余的c2,…,cn这n-1个上索引都无法用来提取和过滤数据,而ICP...我们在MySQL 5.6的环境中来简单测试一下。
我们创建表emp,含有一个主键,一个组合索引来说明一下。...on,firstmatch=on,subquery_materialization_cost_based=on,use_index_extensions=on
下面我们就用两个语句来对比说明一下,就通过执行计划来对比