【发布时间】:2011-04-17 12:48:32
【问题描述】:
我用复合主键创建了一个新表,比如说 PrmID 和 Type,因此创建了一个新的复合聚集索引(PrmID 是第一个)。我为 Type 添加另一个非聚集索引。
我的问题是 - 当我生成对类型执行任何语句的查询(例如 GROUP BY)时,SQL 引擎是使用非聚集索引表还是 PK 聚集索引(对于那种查询来说更昂贵) ?
【问题讨论】:
-
如果您的 PK 在
(PrimID,Type)上,那么仅使用Type(WHERE 子句或 GROUP BY)的东西不能使用该索引 - 它没用。所以该查询肯定会使用 NC 索引
标签: sql sql-server clustered-index composite-primary-key