首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >主键索引

主键索引
EN

Stack Overflow用户
提问于 2018-06-26 16:14:33
回答 4查看 82关注 0票数 1

由于SQL Server中主键的默认聚集索引,搜索表中的主键列是否比搜索非主键列更快?

EN

回答 4

Stack Overflow用户

发布于 2018-06-26 16:18:55

从上一个问题:“我们为表指定键的原因主要是为了提高数据的完整性和数据的有用性。键保证表没有重复数据,因此它们允许数据的用户/使用者正确地识别信息。DBMS查询优化器和存储引擎旨在利用键,因此拥有键也将使您的DBMS有最好的机会有效地执行某些查询,但不能保证添加键在所有情况下都能提高性能。”

也就是说,索引的存在应该会在大多数情况下使搜索速度更快,但与键本身无关

票数 2
EN

Stack Overflow用户

发布于 2018-06-26 16:17:57

根据索引进行搜索通常比不使用索引进行搜索更快(除非您的表非常小,或者索引的情况很糟糕)。此索引还支持主键这一事实与本文的讨论无关。

票数 0
EN

Stack Overflow用户

发布于 2018-06-26 16:19:11

一般而言,关系数据库将被优化以有效地使用主键,但是您的数据库结构、您的查询以及哪个平台上的数据库引擎都将是影响性能的主要因素。

此外,如果未对非主键列编制索引,则无论您的查询如何,它的速度都会降低几个数量级。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/51038047

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档