MySQL使用CREATE INDEX创建索引

时间:2024-03-16 14:19:18

如果,在一个已经存在的表上创建索引,可以使用CREATE INDEX语句,语法格式 
CREATE [UNIQUE|FULLTEXT|SPATIAL] INDEX 索引名 
ON 表名(字段名[(长度)] [ASC|DESC]); 

参数说明 
UNIQUE、FULLTEXT和SPATIAL都是可选参数,分别用于表示唯一性索引、全文索引和空间索引。 
INDEX,用于指明字段为索引。 
首先,创建一个book表,该表中没有建立任何索引

MySQL使用CREATE INDEX创建索引

创建普通索引

在book表中的bookid字段上,建立一个名为index_id的普通索引。

MySQL使用CREATE INDEX创建索引

使用SHWO CREATE TABLE查看表的结构 
可以看出,book表中的bookid字段上,已经建立了一个名为index_id的普通索引。

创建唯一性索引

在book表中的bookid字段上,建立一个名为uniqueidx的唯一性索引

MySQL使用CREATE INDEX创建索引

使用SHOW CREATE TABLE查看表的结构 
可以看出,book表中的bookid字段上,已经建立了一个名为uniqueidx的唯一性索引。

创建单列索引

在book表中的comment字段上,建立一个名为singleidx的单列索引。

MySQL使用CREATE INDEX创建索引

可以看出,book表中的comment字段上,建立了一个名为singleidx的单列索引。

创建多列索引

在book表中的authors和info字段上,建立一个名为mulitidx的多列索引。

MySQL使用CREATE INDEX创建索引

使用SHOW CREATE TABLE查看表结构 
可以看出,book表中authors和info字段上,已经建立了一个名为mulitidx的多列索引。

创建全文索引

删除book表,重新创建book表,在表中的info字段上创建全文索引。

MySQL使用CREATE INDEX创建索引

使用CREATE INDEX语句,在book表中的info字段上,创建名为fulltextidx的全文索引。

MySQL使用CREATE INDEX创建索引

使用SHOW CREATE TABLE查看表的结构 
可以看出,book表中的info字段上已经建立了一个名为fulltextidx的全文索引。

创建空间索引

创建表t7,在表中的g字段上创建名为spatidx的空间索引。

MySQL使用CREATE INDEX创建索引

创建索引

MySQL使用CREATE INDEX创建索引

使用SHOW CREATE TABLE查看表的结构 
可以看出,book表中的g字段上,已经建立了一个名为spatidx的空间索引。

相关文章