请解释一下SQL Server中的索引是如何工作的,什么是聚集索引和非聚集索引?
当我们在某些列上创建索引时,如何提高性能?如何存储列的值以提高性能?
发布于 2010-10-27 16:10:16
你可以写一本关于它的书。
您应该熟悉这一点。
Table and Index structures
Understanding and design indexes
然后,如果你仍然没有捕捉到一些东西,可以在这里询问一些细节。
发布于 2010-10-27 16:29:07
查看:
寻找一些好的介绍材料
发布于 2010-10-27 16:52:13
简而言之:
索引更快,因为它是缓存在内存中的表的子集。
此外,如果请求的所有数据都在索引中,服务器甚至不必查询磁盘。
群集与非群集:
一个表只能有一个聚集索引,因为这意味着磁盘上的数据与索引的顺序相同。如果您插入新数据,表格将被调整以保持此顺序。
聚集索引的搜索速度通常更快,特别是当您需要从每一行中获得更多数据,但在插入时性能受到影响时。
通常在ID列上有聚集索引。
您可以使用许多非聚集索引,它们用于加快查询速度。
通过将最常查询的字段组合在一起,并对索引中的字段进行排序,以便将变化最大的字段放在第一位,您可以获得很大的性能提升,但请阅读其他人提供的链接,您始终可以了解有关索引的更多信息,即使您构建了自己的数据库=)
https://stackoverflow.com/questions/4031094
复制相似问题