Amir Rezaei Asked: 2011-01-26 05:55:47 +0800 CST2011-01-26 05:55:47 +0800 CST 2011-01-26 05:55:47 +0800 CST 什么是聚集索引? 772 我需要对聚集索引做一个简短的解释。 什么是聚集索引? 使用聚集索引的最佳实践是什么? sql-server clustered-index 2 个回答 Voted Best Answer gbn 2011-01-26T06:00:39+08:002011-01-26T06:00:39+08:00 简单来说... 电话簿:数据是索引/索引是数据。为了查找您,我会从 Rezaei,例如 Amir 开始。不需要外部查找。 在数据库方面: 表数据和聚集索引是一回事(在SQL Server,也有InnoDB,Oracle IOT) 最佳实践是窄的、数字的、严格递增的(想想 IDENTITY 或 Autonumber 列)。GUID 之类的数据类型不是一个好主意 阅读链接(避免使这个答案变得臃肿) 《有效聚集索引》(简单讲) 维基百科 MSDN (SQL Server 2000) MSDN (SQL Server 2005+) 编辑,为了充分解释我的最佳实践建议,请点击 Eric Humphrey 评论中的链接:索引女王:Kimberly Tripp kacalapy 2011-01-26T07:52:31+08:002011-01-26T07:52:31+08:00 它是数据本身的索引,因此记录按您拥有聚集索引的字段进行物理排序。这就是每个表只能有一个聚集索引的原因。 非聚集索引的查找速度没有那么快,但您可以在一个表上拥有许多这些类型的索引。
简单来说...
电话簿:数据是索引/索引是数据。为了查找您,我会从 Rezaei,例如 Amir 开始。不需要外部查找。
在数据库方面:
表数据和聚集索引是一回事(在SQL Server,也有InnoDB,Oracle IOT)
最佳实践是窄的、数字的、严格递增的(想想 IDENTITY 或 Autonumber 列)。GUID 之类的数据类型不是一个好主意
阅读链接(避免使这个答案变得臃肿)
编辑,为了充分解释我的最佳实践建议,请点击 Eric Humphrey 评论中的链接:索引女王:Kimberly Tripp
它是数据本身的索引,因此记录按您拥有聚集索引的字段进行物理排序。这就是每个表只能有一个聚集索引的原因。
非聚集索引的查找速度没有那么快,但您可以在一个表上拥有许多这些类型的索引。