数据库面试系列之四:索引
Posted zhaijing
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了数据库面试系列之四:索引相关的知识,希望对你有一定的参考价值。
前言:
做项目的时候遇到一个问题:
写了个网页用来读取后台的数据在前端展示,每次翻页的时候都要过很久数据才显示,后来对where条件的字段增加了索引,数据显示速度明显加快。
索引:在关系数据库中,索引是一种单独的、物理的对数据库表中一列或多列的值进行排序的一种存储结构,它是某个表中一列或若干列值的集合和相应的指向表中物理标识这些值的数据页的逻辑指针清单。索引的作用相当于图书的目录,可以根据目录中的页面快速找到所需的内容。
优点
1.大大加快数据的检索速度;
2.创建唯一性索引,保证数据库表中每一行数据的唯一性;
3.加速表和表之间的连接;
4.在使用分组和排序子句进行数据检索时,可以显著减少查询中分组和排序的时间。
缺点
1.索引需要占物理空间。
2.当对表中的数据进行增加、删除和修改的时候,索引也要动态的维护,降低了数据的维护速度。
索引分为:普通索引,唯一索引,主键索引,聚合索引
创建一张表的时候如果设置了主键约束会自动建立主键索引,UNIQUE约束会自动建立唯一索引
以上是关于数据库面试系列之四:索引的主要内容,如果未能解决你的问题,请参考以下文章
.NET技术面试题系列 -sql server数据库优化规范