索引的分类
1.普通索引和唯一索引
普通索引是MYSQL中的基本索引类型,允许在定义索引的列中插入重复值和空值
唯一索引要求索引列的值必须唯一,但允许有控制。如果是组合索引。则列值的组合必须唯一
主键索引是一种特殊的唯一索引,不允许有空值
2.单列索引和组合索引
单列索引即一个索引只包含单个列,一个表可以有多个单列索引
组合索引是指在表的多个字段组合上创建的索引,只有在查询条件中使用了这些字段的左边字段时,索引才会被使用,使用组合索引时遵循最左前缀集合
3.全文索引
全文索引类型类FULLTEXT,在定义索引的列上支持值的全文查找,允许在这些索引列中插入重复值和空值。全文索引可以在CHAR、VARVHAR或者TEXT类型的列上创建。
4.空间索引
空间索引是对空间数据类型的字段建立的索引,MySQL中的控件数据类型有4种,分别是GEOMETRY、POINT、LINESTRING、和POLYGON.。MySQL使用SPATIAL关键字进行扩展,使得能够用创建正规索引类似的语法创建空间索引,创建空间索引的列,必须将其声明为NOT NULL,空间索引只能在存储引擎为MyISAM的表中创建。