我有下一个简单查询:SELECT * FROM table LEFT JOIN table2 ON table2.id=table.id WHERE table.id=1
在table.id和table2.id
当我检查它如何与EXPLAIN
一起工作时,它表明它没有使用索引,并且遍历所有行。我用另一个具有相同结构的精确表检查相同的内容,在这种情况下使用索引。
更奇怪的是,如果我有另一个更复杂的查询,如
SELECT * FROM table LEFT JOIN table2 ON table2.id=table.id LEFT JOIN table3 ON table3.id=table.id WHERE table.id=1
索引在两个表格中都很完美,即使在有问题的table2
我完全确定这是我的错误,但我真的不知道为什么有时会使用索引,有时候不会......任何MySQL专家都可以帮助我?非常感谢你!