什么事最左匹配原则?
通过将多个字段组合成⼀个索引,该索引就被称为联合索引。
使⽤联合索引时,存在最左匹配原则,也就是按照最左优先的⽅式进⾏索引的匹配。
最左匹配原则要求查询条件中的列应该从索引的最左边的列开始,并且不能跳过中间的列。如果查询条件不按照索
引的顺序进⾏匹配,那么索引可能会失效。
举个例⼦:
- 如果查询条件为 WHERE column1 = 'value1' ,那么索引可以被有效使⽤。
- 如果查询条件为 WHERE column1 = 'value1' AND column2 = 'value2' ,同样索引可以被有效使⽤。
- 但如果查询条件为 WHERE column2 = 'value2' 或 WHERE column2 = 'value2' AND column3 = 'value3' ,则最左匹配原则不成⽴。
- 范围查询的影响:
- 当使用范围查询(例如 >, <)时,匹配过程会停止。
- 例如,如果你有一个索引 (column1, column2, column3), 在查询中:WHERE column1 = 'value1' AND column2 > 'value2':索引仍然可以用于 column1 和 column2,但无法进一步匹配 column3。