MySQL专题八:索引
8.1. 索引类型
-
主键索引
默认mysql会为主键建立索引 -
唯一索引
用来保证一列或多列的唯一值,避免重复值 -
全文索引
-
多列索引
为Mysql多列建立索引,具有最左前缀原则(查询率高的字段放在最左边),例如建立了一个2列的索引(field_name_1,field_name_2,field_name_3),相当于建立了(field_name_1)、(field_name_1,field_name_2)、(field_name_1,field_name_2,field_name_3)三个多列索引
8.2. 索引创建
下面的index_keyword
可以是PRIMARY KEY
, FOREIGN KEY
、UNIQUE INDEX
, INDEX
, and FULLTEXT INDEX
- 在
CREATE TABLE
语句中
CREATE TABLE table_name (
field_name_1 field_type_1,
...
field_name_n field_type_n,
index_keyword index_name (field_name)
) ENGINE=InnoDB;
- 在
ALTER TABLE
语句中
ALTER TABLE table_name
ADD CONSTRAINT constraint_name index_keyword(field_name_1,field_name_2,...);
- 在
CREATE INDEX
语句中
CREATE index_keyword index_name
ON table_name(field_name_1,field_name_2,...);