您的位置:首页 > 数据库 > MySQL

MySQL——索引(index)了解

2018-03-24 18:57 621 查看

一、什么是索引

index

索引相当于一本数的目录,索引作用:提高程序的检索效率

二、主键自动添加索引

能通过主键查询,尽量用主键查询,效率高

三、索引与表关系

索引和表相同,都是一个对象,表是存在于硬盘文件中,那么索引是表的一部分,索引也是存储在硬盘中

四、MySQL中,对表中记录进行检索的几种方式

1、全表扫描(效率低)

2、通过索引进行检索(提高查询效率)

五、一张表中有多个字段,每个字段都是可以添加索引

六、什么情况下适合给表中添加索引

该表数据量庞大

该字段很少DML操作(DML很多的话,索引也是要不断的维护,效率反而低)

该字段经常出现在where条件中

七、如何创建索引

1、create index 索引名 on 表名(列名)

create unique index u_ename on emp(ename);


2、alter table 表名 add unique index 索引名 (列名);

八、查看索引

show index from emp;


九、使用索引

注意一定不可以用select * … 可以看到type!=all了,说明使用了索引

explain select sal from emp where sal > 1500;


十、删除索引

DROP INDEX index_name ON talbe_name
ALTER TABLE table_name DROP INDEX index_name
ALTER TABLE table_name DROP PRIMARY KEY
其中,前两条语句是等价的,删除掉table_name中的索引index_name。
第3条语句只在删除PRIMARY KEY索引时使用,因为一个表只可能有一个PRIMARY KEY索引,
mysql> ALTER TABLE EMP DROP INDEX test_index;

删除后就不再使用索引了,查询会执行全表扫描。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: