1.普通索引 最基本的索引,没有限制。
2.唯一索引 与普通索引类似,不同的是索引列的值必须唯一,但允许有null,如果是组合索引,则列值的组合必须唯一,创建方法和普通索引类似。
3.全文索引 大容量的数据表,生成全文索引是一个非常消耗时间非常消耗硬盘空间的做法。
4.单列索引,多列索引 多个单列索引和单个多列索引查询的效果不同,因为执行查询时,MySQL只能使用一个索引,会从多个索引中选择一个限制最严格的索引。
5.组合索引(最左前缀) 平时用的SQL查询语句一般都有比较多的限制条件,所以为了进一步榨取MySQL的效率,就要考虑建立组合索引,例如创建一个索引指定(name(20),age(10)),建立这样的组合索引,相当于分别建立了下面两个索引(name,age)(name)
为什么没有age索引,因为MySQL 组合索引“最左前缀”的结果。