普通的SQL Server索引是否包含主键值?

geo*_*son 1 sql-server indexing

我正在创建一个用于数据处理的查找表.结构相当简单.

第一个字段将是主键和聚簇索引.将有第二个字段来跟踪项目类型.

我们想要第二个字段的索引,因为一些(但不是所有查询)将在该字段上搜索.这些查询还需要提取主键的值.

我希望利用非聚集索引的查询不必转到表并拉出主键值.

所以我的问题是正常的SQL Server索引是否具有主键值或者它们只是指向聚簇索引(为了我的目的,我只是假设主键和聚簇索引是共同扩展的)?如果它只包含指向磁盘的指针而不是主键值,那么我正在考虑将第一列(主键)作为基于第二列的普通索引的包含列.

Aak*_*shM 6

引用文档CREATE INDEX:

如果在表上定义了聚簇索引,则非聚簇索引始终包含聚簇索引列.