MySql索引

MySQL索引分类:

1、单值索引:单列,一个表中可以有多个。
2、唯一索引:不能重复,例如id,可以是null
3、复合索引:多个列构成的索引(相当于二级目录:比如name和age两个列组成的索引就先按name查询如果name重复再加上age这个条件,如果没有重复就只用name就行了)
4、主键索引:不能重复,不能是null

创建索引:

方式一:

create 索引类型 索引名 on 表(字段)

单值:

create index dept_index on tb(dept);

唯一

create unique index name_index on tb(name);

复合:

create index dept_name_index on tb(dept,name);

方式二:

alter table 表名 索引类型 索引名(字段)

单值:

alter table tb add index dept_index(dept);

唯一:

alter table tb add unique index name_index(name);

复合:

alter table tb add index dept_name_index(dept,name)

注意:如果一个字段是primary key,则改字段默认就是主键索引

删除索引:

drop index 索引名 on 表名;

drop index name_index on tb;

查询索引

show index from 表名;
show index from 表名 \G

上一篇:MySQL 不同版本数据导入的问题


下一篇:Oracle SQL 性能优化利器