2014-12-04 73 views
1

假设我有一个表列(ID,姓名,性别,年龄)如何聚集索引的工作时,它具有相同值的许多键

如果我有一个非聚集索引列在“名称”中,如果我有10个名为“Lucas”的人,会发生什么?索引是否知道他指的是哪一个“卢卡斯”? 如果有那么多Lucas'在B-Tree树叶的不同页面上分开,索引是否仍然知道如何找到它们以及他必须为每个“Lucas”指出哪一行?

+0

真:所有的表**应该有**的主聚集键....堆是数据热气腾腾的一堆 - *** ***不推荐在所有! – 2014-12-04 06:08:02

+0

@marc_s,拥有这个主聚簇键将防止无用的组合非聚簇索引,对吧?例如,如果我在我编写的NC索引中有键(ID asc,FirstName asc)。由于ID从不重复,FirstName将永远不会被排序,因此它是无用的。因此,这里最好的事情是使用ID中的聚集索引和例如带有FirstName和LastName的组合NC索引。我对吗? – Mucida 2014-12-04 12:04:15

回答

相关问题