我有一个查询在多个表上执行连接。我在表的外键和主键上的聚簇索引上有非聚簇索引。在分析查询计划时,我发现查询优化器正在所有表上选择聚簇索引扫描,或者在某些情况下,将非聚簇索引扫描和键查找组合在一起以获取其他非键列。为了解决这个问题,我在非聚集索引中包含了(覆盖)此查询中所需的非键列。因此,我可以看到非聚集索引搜索/扫描按预期执行。涵盖索引的用处
现在我的问题是,如果我有其他查询需要许多其他非键列是结果集的一部分,那么我可能会最终将所有列添加(INCLUDING)到非聚集索引来改善所有查询的性能。这是个好主意吗?
谢谢。