索引 聚集索引 唯一索引 普通索引 联合索引 覆盖索引

聚集索引  primary key   唯一索引 unique  普通索引  alter table t1 all index index_name(id)

索引的作用是加速查找

覆盖索引:  select name from t1 where id = 20   命中了辅助索引但是为覆盖到索引  还需要从聚集索引中查找name  会进行二次查找,一次查找不到               select id  name from t1  where id =  20  命中索引  一次就找到 覆盖到了索引

联合索引:  索引是有个最左匹配原则  所以建立联合索引的时候将区分度高的放最左边  依次排下来   范围查询的条件往后放 

如果where条件是or的关系   加索引不起作用 

联合索引又称符合索引,对于复合索引 MySQL 从做到有的使用索引中的字段  一个查询可以只使用索引中的一部分  但是只能是最左侧的部分     例如索引是  key index(a,b,c)  可支持a|a,b|abc 三种组合进行查找,但不支持b,c查找

两个或两个以上的索引被称为复合索引  

联合索引创建方式就是在普通索引的括号里添加两个或两个以上的字段 聚集 唯一 辅助  都可以  

只有当联合索引的第一个字段在where 条件中出现时  才会使用索引查询  不然就是全表扫描查询

原文地址:https://www.cnblogs.com/16795079a/p/10316645.html