一、联合索引的特点?
使用一个索引来实现表中多个字段索引的效果
二、索引是如何存储的?
三、联合索引的最左前缀法则
1.什么叫最左前缀法则?
最左前缀法则是表示一条sql在联合索引中是否走了索引(命中索引/是否全表扫描);
2.SQL解释最左前缀法则案例
#创建联合索引的语句
create index idx_a_b_c on table(a,b,c);
#用sql解释联合索引是否被命中
select * from table where a=1;#满足条件a命中
select * from table where a=1 and b=2;#满足条件a、b命中
select * from table where a=1 and b=2 and c=3;#满足条件a、b、c命中
select * from table where b=2;#不满足条件
select * from table where b=2 and c=3;#不满足条件
select * from table where a=1 and c=3;#a满足条件命中,c不满足条件需在a确定的数据中全表扫描
select * from table where c=3;#不满足条件
select * from table where a=1 and c=3 and b=2;#满足条件a、b、c全部命中(*mysql 内置优化器,会进行一次内部优化)