【发布时间】:2010-08-14 13:18:07
【问题描述】:
基本上,如果我有一个包含复合索引 (colA, colB, colC) 和 (colB, colD, colE) 的表,MySQL 是否能够利用它们在 colB 上的重叠来组合它们并加快涉及 colA 的查询、colB 和 colD,即使没有涵盖这三个特定列的单个索引?
我尝试在这样的测试用例上使用 EXPLAIN,但即使它识别出两个索引都是可能的键,它也只使用了第一个。但是,我不知道这是因为它无法进行组合还是因为优化器认为考虑到行数不值得。
我希望它应该能够,但找不到任何直接的确认。感谢您的意见。
【问题讨论】: