mysql-索引

 

一、什么是索引

        索引被用来快速找出在一个列上用一特定值的行。没有索引,MySQL不得不首先以第一条记录开始,然后读完整个表直到它找出相关的行。表越大,花费时间越多。对于一个有序字段,可以运用二分查找(Binary Search),这就是为什么性能能得到本质上的提高。MYISAMINNODB都是用B+Tree作为索引结构。

        索引等同于一本书的目录

        主键会自动添加索引,所以尽量根据主键查询效率较高。

       (主键,unique 都会默认的添加索引)

二、索引的使用场景

        1、表中该字段中的数据量庞大

        2、经常被检索,经常出现在where子句中的字段

        3、经常被DML操作的字段不建议添加索引

三、索引的2种语句创建形式

        1、CREATE UNIQUE INDEX index_name ON table_name(column_name); 

        2、ALTER TABLE table_name ADD UNIQUE INDEX index_name (column_name);

四、查看一个表的索引

        

SHOW INDEX FROM table_name;

 五、删除一个表的索引

1、DROP INDEX index_name ON talbe_name;
2、ALTER TABLE table_name DROP INDEX index_name

posted @ 2019-01-06 16:19  活不明白  阅读(18)  评论(0)    收藏  举报