最左前缀原则(Leftmost Prefix Principle)是数据库索引设计中的一个重要概念,主要应用于复合索引(Composite Index)。复合索引是指在多个列上创建的索引。最左前缀原则指的是在查询中使用复合索引时,必须从索引的最左列开始匹配,否则索引可能无法被使用。
概念解释
假设有一个复合索引包含列(A, B, C)
,即INDEX(A, B, C)
。根据最左前缀原则,以下几种查询模式可以使用索引:
-
完全匹配:查询条件包含所有索引列,且顺序一致。
WHERE A = ? AND B = ? AND C = ?
-
最左列匹配:查询条件从最左列开始,可以包含部分列。
WHERE A = ? WHERE A = ? AND B = ? WHERE A = ? AND B = ? AND C = ?
-
范围查询:最左列进行范围查询,后续列可以是等值查询。
WHERE A > ? AND B = ? WHERE A BETWEEN ? AND ?