有效使用dm_db_missing_index_details

时间:2017-12-07 05:32:21

标签: sql sql-server azure

如何有效地使用SQL SERVER数据库的 dm_db_missing_index_details 。我是否需要创建表中详细说明的所有缺失索引以及 equality_columns inequality_columns 的含义。 如何在创建索引(非聚集索引)时使用 equality_columns inequality_columns 包含的列

1 个答案:

答案 0 :(得分:0)

当然,您不需要创建dm_db_missing_index_details建议的所有索引但是值得注意并检查可能的性能改进

Equality列是用于EQUAL" ="的搜索操作的字段。操作

不等列是更适合BETWEEN或LESS或GREATER THAN等范围比较的字段。

根据您的评论,可以执行以下语句来创建非聚集索引

CREATE NONCLUSTERED INDEX [INDEXNAME] ON [TABLENAME] (
    [EQUALITYCOLUMNNAME], 
    [INEQUALITYCOLUMNNAME]
) 
INCLUDE (
    [INCLUDECOLUMN]
);

虽然我在单个索引定义中添加了相等列和不等式列,但您可以考虑创建单独的索引

通常,应在索引列列表的开头定义大多数选择性和相等列。不等式列遵循创建索引语句的字段列表

中的相等列

请参阅create index声明说明