MySQL复合索引
2024.6.29
1.首先,需要明确的是:最左前缀原则是发生在复合索引上的,只有复合索引才会有所谓的左和右之分
2.在MySQL建立联合索引时会遵守最左前缀匹配原则,即最左优先,在检索数据时从联合索引的最左边开始匹配
mysql 建立多列索引(联合索引)有最左前缀的原则,即最左优先,如:
- 如果有一个 2 列的索引 (col1, col2),则已经对 (col1)、(col1, col2) 上建立了索引;
- 如果有一个 3 列索引 (col1, col2, col3),则已经对 (col1)、(col1, col2)、(col1, col2, col3) 上建立了索引;
当 select * from T where a = 1 and b = 3 的时候, 数据库系统可以直接从索引文件中直接二分法找到 A = 1 的记录,然后再 B = 3 的记录
但如果你 where b = 3 则需要遍历这个索引表的全部
引自 https://blog.csdn.net/zhizhengguan/article/details/120855011

浙公网安备 33010602011771号