首页 > 试题广场 >

索引是对数据库表中一个或多个列的值进行排序的数据结构,以协助

[单选题]
索引是对数据库表中一个或多个列的值进行排序的数据结构,以协助快速查询、更新数据库表中数据。以下对索引的特点描述错误的是:
  • 加快数据的检索速度
  • 加速表和表之间的连接
  • 在使用分组和排序子句进行数据检索时,并不会减少查询中分组和排序的时间
  • 通过创建唯一性索引,可以保证数据库表中每一行数据的唯一性
索引的特点:
创建索引的好处
(1)通过创建索引,可以在查询的过程中,提高系统的性能
(2)通过创建唯一性索引,可以保证数据库表中每一行数据的唯一性
(3)在使用分组和排序子句进行数据检索时,可以减少查询中分组和排序的时间
创建索引的坏处
(1)创建索引和维护索引要耗费时间,而且时间随着数据量的增加而增大
(2)索引需要占用物理空间,如果要建立聚簇索引,所需要的空间会更大
(3)在对表中的数据进行增加删除和修改时需要耗费较多的时间,因为索引也要动态地维护

发表于 2019-07-10 21:33:37 回复(0)

索引的第3个优点是可以加快表连接的速度。

要说明这个问题,首先要降到表连接的3种算法,分别是:hash,nested loop,merge。
现在有A、B两个表,A表数据量1000w,B表数据2000w,关联字段是ID。
对hash算法的影响:
无其他过滤条件,但是select A.ID,B.ID

在这个前提下,如果创建索引,会加快连接速度。

因为这个时候虽然需要访问表里所有的数据,但是可以直接用索引的数据,进行关联,因为只需要返回两个表的ID字段的值。

而相对于表来说,索引中只包含了ID字段的值,所以占用的磁盘空间,相对于表来说,会小很多,所以扫描整个索引所需要的时间,远小于扫描全表的时间,本质上就是访问的数据页数少了,IO次数少了,所需要的时间就少了。



发表于 2019-07-19 22:38:12 回复(4)
索引的特点:
创建索引的好处
(1)通过创建索引,可以在查询的过程中,提高系统的性能
(2)通过创建唯一性索引,可以保证数据库表中每一行数据的唯一性
(3)在使用分组和排序子句进行数据检索时,可以减少查询中分组和排序的时间
创建索引的坏处
(1)创建索引和维护索引要耗费时间,而且时间随着数据量的增加而增大
(2)索引需要占用物理空间,如果要建立聚簇索引,所需要的空间会更大
(3)在对表中的数据进行增加删除和修改时需要耗费较多的时间,因为索引也要动态地维护
发表于 2021-11-02 19:40:49 回复(0)
建立索引就是排序了,C错
发表于 2021-07-11 10:18:20 回复(0)