mysql 索引 index range

今天在调试一个BUG的时候,无心间发现 explain 发现了 index range;php

以前对于索引的理解是,单个索引每次查询只能用一个索引。因而赶忙查一下,果真存在这个优化器在适当的时候会选择使用两个索引而后取交集,并集。html

又一想那效率和符合索引有什么区别呢? 实验发现仍是符合索引速度快,并且快很多。看来出现index range 不是最优的索引。mysql


效率对比:sql

符合索引(user_id,type)优化

单个索引user_id,type 优化器自动选择两个索引交集调试

总结:符合索引仍是第一选择。code


附上两篇关于index range 讲解:htm

http://dev.mysql.com/doc/refman/5.7/en/index-merge-optimization.html 索引

http://www.orczhou.com/index.php/2013/01/mysql-source-code-query-optimization-index-merge/ get

相关文章
相关标签/搜索