索引加快查询速度。但是更新时要自动维护索引。
建立索引,相当于为书建立目录
主键和唯一键之间的本质区别是主键不接受NULL值,而在唯一键约束内允许NULL值。
一般自动在主键列创建聚簇索引。数据的存储按聚簇索引顺序来,只能有一个。而唯一索引可有多个。常常对列进行查询操作,可创建索引。
通过创建索引,可以再查询的过程中,提高系统的性能
通过创建唯一性索引,可以保持数据库表中每一行数据的唯一性
在使用分组和排序子句进行数据检索时,可以减少查询中分组和排序的时间
创建索引和维护索引要耗费时间,而且时间随着数据量的增加而增大
索引需要占用物理空间,如果要建立聚簇索引,所需要的空间会更大
在对表中的数据进行增删改时需要耗费较多的时间,因为索引也要动态地维护
场景:
经常需要搜索的列上
作为主键的列上
经常用在连接的列上,这些列主要是一些外键,可以加快连接的速度
经常需要根据范围进行搜索的列上
经常需要排序的列上
经常使用在where子句上面的列上