数据库索引

一、使用索引的目的

目的:加快数据库的查询速度

二、建立索引的优缺点

优点:

1、大大加快数据的检索速度

2、创建唯一性索引,保证数据库表中每一行数据的唯一性

3、加速表和表之间的连接

4、在使用分组和排序子句进行数据检索时,可以显著减少查询中分组和排序的时间

缺点:

1、索引需要占用数据表以外的物理存储空间

2、创建索引和维护索引要花费一定的时间

3、当对表进行更新操作时,索引需要被重建,这样降低了数据的维护速度

三、索引类型

唯一索引

主键索引

聚集索引

四、索引的实现方式

B+树

散列索引

位图索引

五、哪些情况适合建索引,哪些不适合

适合建索引

1、在最频繁使用的、用以缩小查询范围的字段上建立索引

2、在频繁使用的、需要排序的字段上建立索引

不适合建索引

1、对于查询中很少涉及的列或者重复值比较多的列,不宜建立索引

2、对于一些特殊的数据类型,不宜建立索引,比如文本字段(text)等

六、哪些情况下索引无法使用

1、以“%”开头的LIKE语句,模糊匹配

2、OR语句前后没有同时使用索引

3、数据类型出现隐式转化(如varchar不加单引号的话可能会自动转换为int型)

原文地址:https://www.cnblogs.com/kingshine007/p/11409710.html