A, B
复合索引时,A=? and B=?
与 B=? and A=?
效果是否一致
Issue 欢迎在 Gtihub Issue 中回答此问题: Issue 345
Author 回答者: ansonlovecoding
MySQL 复合索引遵循最左前缀匹配原则,这意味着如果你在多列上创建了一个复合索引,那么查询中使用这个索引时,必须按照索引中列的顺序从左到右进行匹配,所以如果符合索引是(A,B),查询 A=? and B=? 会使用到索引,而B=? and A=?不会使用到索引,两者效果是不一致的。