什么事最左匹配原则?

通过将多个字段组合成⼀个索引,该索引就被称为联合索引。
使⽤联合索引时,存在最左匹配原则,也就是按照最左优先的⽅式进⾏索引的匹配。
最左匹配原则要求查询条件中的列应该从索引的最左边的列开始,并且不能跳过中间的列。如果查询条件不按照索 引的顺序进⾏匹配,那么索引可能会失效。

举个例⼦:

  • 如果查询条件为 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。