1.概念:是提高查询性能的常用工具,mysql索引使用b-树的形式保存。关键字:>,<,>=,<=,<>,between,in,like'pt'(pt不能以通配符开始)
2.分类:普通索引,唯一索引,主键索引,全文索引
3.普通索引:create index name_idx on employer (name(20));修改表时添加索引:alter table tab_name add index [name_idx](name(length));
4.唯一索引:与前面的普通索引基本相同,区别是所有的索引值只能出现一次。create unique index name_idx on employer(name);
5.主键索引:特殊的唯一索引,创建表的时候指定,mysql创建主键时候,主键索引就创建成功了。一个表只有一个主键索引。创建主键:create table tab_name( [...],primary key(name));修改表的时候引入主键,alter table tab_name add [constraint 索引名] primary key(列);
6.全文索引:索引类型为fulltext,创建过程与上面的类似只需要修改关键字即可。
7.删除索引:drop index idx_name on tab_name;
8.禁用索引:alter table tab_name disable keys;
9.打开索引:alter table tab_name enable keys;
10:使用原则:where 子句中的列适合索引,而非select后的列。对于char/varchar使用短索引即可。利用最左索引。根据索引关键字建立多列索引。不要过度索引。