【发布时间】:2020-04-10 16:09:58
【问题描述】:
在传统 SQL Serer 的 SSMS 中,您会在实际执行计划中获得缺少索引的提示。
(它显示create indexstatements。)
但是,当连接到 Azure SQL 数据库时,似乎缺少此功能。是否有其他方法可以获取有关丢失索引和加快查询的提示?
【问题讨论】:
在传统 SQL Serer 的 SSMS 中,您会在实际执行计划中获得缺少索引的提示。
(它显示create indexstatements。)
但是,当连接到 Azure SQL 数据库时,似乎缺少此功能。是否有其他方法可以获取有关丢失索引和加快查询的提示?
【问题讨论】:
您可以使用sys.dm_db_missing_index_details (Transact-SQL) 获取丢失索引的详细信息:返回有关丢失索引的详细信息,不包括空间索引。
有 3 个主要 DMV 提供有关缺失索引的信息:
--Returns detailed information about missing indexes
SELECT * FROM sys.dm_db_missing_index_details
--Returns information about what missing indexes are contained in a specific missing index group
SELECT * FROM sys.dm_db_missing_index_groups
--Returns summary information about groups of missing indexes
SELECT * FROM sys.dm_db_missing_index_group_stats
更多细节可以参考:
其他参考:Identifying Missing Indexes in SQL Server.
希望这会有所帮助。
【讨论】: