关闭

最左前缀原则

别叨叨 1年前 ⋅ 179 阅读

就是最左优先,在创建多列索引时,要根据业务需求,where子句中使用最频繁的一列放在最左边。

最左前缀匹配原则非常重要,mysql会一直向右匹配直到遇到范围查询(>、<、between、like)就停止匹配,比如a = 1 and b = 2 and c > 3 and d = 4 如果建站(a、b、c、d)顺序的索引,d是用不到索引的,如果建(a、b、d、c)的索引则都可以用到,a、b、d的顺序可以任意。

= 和 in 可以乱序,比如 a = 1 and b = 2 and c = 3 建站(a、b、c)索引可以任意顺序,mysql的查询优化器会帮你优化成索引可以识别的形式。


全部评论: 0

    我有话说: