索引的分類
1. 普通索引和唯一索引
普通索引是mysql 中的基本索引類型,允許在自定義索引的列中插入重復值和空值。
唯一索引,索引列的值必須唯一,但允許有空值。如果是組合索引,則列值的組合必須唯一。主鍵索引是一種特殊的唯一索引,不允許有空值。
2.單列索引和組合索引
單列索引即一個索引只包含單個列,一個表可以有多個單列索引。
組合索引指在表的多個字段組合上創建索引,只有在查詢條件中使用了這些字段的左邊字段時,索引才會被使用。使用組合索引時遵循最左前綴組合。
3.全文索引
全文索引類型為FULLTEXT,在定義索引的列上支持值的全文查找,允許在這些索引列中插入重復值和空值。全文索引可以在char,Varchar 或者
TEXT類型列上創建。MYSQL中只有MyIsAM存儲引擎支持全文索引
4.空間索引
空間索引是對空間數據類型的字段建立索引,MYSQL中空間數據類型有4種,分別是:GEOMETRY、POINT、LINESTRING&POLYGON。MYSQL使用SPATIAL關鍵字進行擴展。使得能夠用于創建正規索引類似語法創建空間索引。創建空間索引的列,必須將其聲明為NOT NULL ,空間索引只能在存儲引擎為MyIsAM的表中創建