我已经多次看过这个,但我可能误解了EXPLAIN查询计划.
假设我有一个表(col1,col2).我想在col1和col2上加入另一个表.所以我创建了一个索引(col1,col2).有时,EXPLAIN显示索引未被使用.也许使用其他一些低效的索引或根本不使用.
但是如果我创建另一个索引(col1),则使用第一个索引(col1,col2).
有没有人曾经遇到过这种情况?你知道为什么会这样吗?
我的理论是,未使用的索引提供了一些关于表的更准确的统计信息,这些统计信息提示查询计划使用第一个索引.但是我对mysql的内部工作方式不太熟悉,知道这是真的还是如何证明它.
| 归档时间: |
|
| 查看次数: |
131 次 |
| 最近记录: |