如果查询中的某列出现范围查询,则该列右边的列不能使用索引。
使用示例
创建索引:
ALTER TABLE `staffs` ADD INDEX idx_staffs_nameAgePos(`name`, `age`, `pos`);
使用范围查询:
EXPLAIN SELECT * FROM staffs WHERE `name`='July' AND age>25 AND pos='dev';
结果:
name 的索引列可以用于精确查找。
age 的索引列可以用于范围查找。
pos 的索引列失效。