数据库索引<一>

    xiaoxiao2021-11-16  89

    数据库索引分类各类索引的关系各类索引适合的使用情况

    <一>数据库索引分为四种:

    (1)聚集索引(clustered index,也称聚类索引、簇集索引)

    (2)非聚集索引(nonclustered index,也称非聚类索引、非簇集索引)

    (3)唯一索引

    (4)主键索引

    聚集索引:

    该索引中键值的逻辑顺序决定了表中相应行的物理顺序,也因此一张表中只能有一个聚集索引

    聚集索引对于那些经常要搜索范围值的列特别有效。使用聚集索引找到包含第一个值的行后,便可以确保包含后续索引值的行在物理相邻。例如,如果应用程序执行 的一个查询经常检索某一日期范围内的记录,则使用聚集索引可以迅速找到包含开始日期的行,然后检索表中所有相邻的行,直到到达结束日期。

    非聚集索引:

    该索引中索引的逻辑顺序与磁盘上行的物理存储顺序不同。

    唯一索引:

    唯一索引不允许两行具有相同的索引值,但可以为空。

    主键索引:

    为表定义一个主键将自动创建主键索引,主键索引是唯一索引的特殊类型。主键索引要求主键中的每个值是唯一的,并且不能为空。

    <二>索引之间的关系

    (1)四种索引存在交叉关系:

    【唯一索引 ,非聚集】,【唯一索引,聚集】,【主键索引】,【聚集索引,不唯一】,【聚集索引,唯一】,【非聚集索引,唯一】,【非聚集索引,不唯一】

    (2)聚集索引和非聚集索引的不同:

    聚集索引的叶子就是数据节点,非聚集索引的叶子可能不是数据节点,可能是索引指针。

    <三>各类索引的使用场合

    动作描述 使用聚集索引 使用非聚集索引 列经常被分组排序 应 应 返回某范围内的数据 应 不应 一个或极少不同值 不应 不应 小数目的不同值 应 不应 大数目的不同值 不应 应 频繁更新的列 不应 应 外键列 应 应 主键列 应 应 频繁修改索引列 不应 应

    转载请注明原文地址: https://ju.6miu.com/read-678271.html

    最新回复(0)