当前位置:首页 > 趣闻趣事 > 索引有哪几种类型(索引的类型有几种)

索引有哪几种类型(索引的类型有几种)

1.普通索引和唯一性索引,索引列的值唯一性

2.单个索引和复合索引,索引列所包含的列数

3.聚簇索引和非聚簇索引,聚簇索引按照数据的物理存储进行划分的,对于一堆记录来说,使用聚集索引就是对这堆记录进行堆划分,即主要描述的是物理上的存储,正是因为这种划分方法,导致聚簇索引必须是唯一的,聚集索引可以帮助把很大的范围,迅速减少范围,但是查找该记录,就要从这个小范围中scan了,而非聚集索引是把一个很大的范围,转换成一个小的地图,然后你需要在这个小地图中找你要寻找的信息的位置,最后通过这个位置再去找你所需要的记录。

主键,自增主键,主键索引,唯一索引

1.主键索引:指的就是主键,主键是索引的一种,是唯一索引的特殊类型,创建主键的时候数据库默认会为主键创建一个唯一性索引。

2.自增主键:字段类型为数字,自增,并且是主键

3.唯一性索引:索引列的值必须唯一,但允许有空值,主键是唯一性索引这样说没错

4.有空之所以不能说唯一索引也是主键

主键就是聚簇索引吗?主键和索引有什么区别?

主键是一种特殊的唯一性索引,其可以是聚集索引也可以是非聚集索引,在sqlserver中,主键的创建必须依赖于索引默认创建的是聚集索引,但也可以显示指定为非聚集索引。Innodb作为mysql存储引擎,默认按照主键进行聚集,如果没有定义主键,innodb会试着使用唯一的非空索引来代替,如果没有这种索引,inndb就会定义隐藏的主键然后在上面进行聚集,所以对于聚集索引来说,你创建主键的时候,自动就创建了主键的聚集索引。


索引有哪几种类型,索引的类型有几种