10 | MySQL为什么有时候会选错索引?
Posted lakeslove
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了10 | MySQL为什么有时候会选错索引?相关的知识,希望对你有一定的参考价值。
如果使用索引 a,每次从索引 a 上拿到一个值,都要回到主键索引上查出整行数据,这个代价优化器也要算进去的。
而如果选择扫描 10 万行,是直接在主键索引上扫描的,没有额外的代价。
优化器会估算这两个选择的代价,从结果看来,优化器认为直接扫描主键索引更快。
当然,从执行时间看来,这个选择并不是最优的。
不过需要注意的是,文章中给出的几个选错索引的例子都没有浮现出来。
以上是关于10 | MySQL为什么有时候会选错索引?的主要内容,如果未能解决你的问题,请参考以下文章