索引的分类
单列索引
普通索引:MySQL中基本索引类型,没有什么限制,允许在定义索引的列中插⼊重复值和空值,纯粹为了查询数据更快⼀点。 add index
唯⼀索引:索引列中的值必须是唯⼀的,但是允许为空值. add unique index
主键索引:是⼀种特殊的唯⼀索引,不允许有空值。 pk
组合索引
在表中的多个字段组合上创建的索引 add index(col1,col2..)
组合索引的使⽤,需要遵循最左前缀原则。
⼀般情况下,建议使⽤组合索引代替单列索引(主键索引除外)。
全⽂索引
只有在MyISAM引擎、InnoDB(5.6以后)上才能使⽤,⽽且只能在CHAR,VARCHAR,TEXT类型字段上使⽤全⽂索引。 fulltext
优先级最⾼ 先执⾏ 不会执⾏其他索引
存储引擎 决定执⾏⼀个索引
空间索引
不做介绍,⼀般使⽤不到。
索引的使⽤
创建索引
单列索引之普通索引
CREATE INDEX index_name ON table(column(length)) ;
ALTER TABLE table_name ADD INDEX index_name (column(length)) ;
单列索引之唯⼀索引
CREATE UNIQUE INDEX index_name ON table(column(length)) ;
alter table table_name add unique index index_name(column);
单列索引之全⽂索引
CREATE FULLTEXT INDEX index_name ON table(column(length)) ;
alter table table_name add fulltext index_name(column)
组合索引
ALTER TABLE article ADD INDEX index_titme_time (title(50),time(10)) ;
删除索引
DROP INDEX index_name ON table
查看索引
SHOW INDEX FROM table_name \G
**粗体** _斜体_ [链接](http://example.com) `代码` - 列表 > 引用
。你还可以使用@
来通知其他用户。