在以下查询中
SELECT col1,col2
FROM table1
WHERE col3='value1'
AND col4='value2'
Run Code Online (Sandbox Code Playgroud)
如果我在col3上有一个单独的索引,而在col4上有另一个索引,那么在这个查询中将使用哪一个?
我在某处读到,对于查询中的每个表,只使用一个索引.这是否意味着查询无法使用这两个索引?
其次,如果我同时使用col3和col4创建了一个复合索引,但在WHERE子句中只使用了col3,那么性能会更差吗?例:
SELECT col1,col2
FROM table1
WHERE col3='value1'
Run Code Online (Sandbox Code Playgroud)
最后,在所有情况下使用覆盖索引是否更好?MYISAM和innodb存储引擎有什么不同?