我正在查看tsql
查询的执行计划。
计划中有key LookUp (Clustered)
。为了避免这种Key LookUp
,我尝试在索引(执行计划中使用的索引)中包含一列(Status_Ind
)。但我意识到优化器正在使用两个索引,一个是主键索引,另一个是第二个,一个自动创建的索引作为约束的一部分(一个独特的非嵌入索引)。我发现无法在此索引中添加包含部分。
我们如何在自动创建的索引中添加INCLUDE(通过CONSTRAINTS)? 我真的是查询优化的初学者。
答案 0 :(得分:1)
如果您发现密钥查找确实很重要(可能是也可能不是),您可以创建唯一索引而不是唯一约束。在SQL Server中,两者是相同的(通过唯一索引强制执行唯一约束)。您可以在唯一索引上放置包含列,因此您应该设置。