sys.dm_db_missing_index_groups (Transact-SQL)

APPLIES TO: yesSQL Server yesAzure SQL Database noAzure SQL Data Warehouse noParallel Data Warehouse

This DMV returns information about indexes that are missing in a specific index group, except for spatial indexes.

In Azure SQL Database, dynamic management views cannot expose information that would impact database containment or expose information about other databases the user has access to. To avoid exposing this information, every row that contains data that doesn't belong to the connected tenant is filtered out.

Column name Data type Description
index_group_handle int Identifies a missing index group.
index_handle int Identifies a missing index that belongs to the group specified by index_group_handle.

An index group contains only one index.


Information returned by sys.dm_db_missing_index_groups is updated when a query is optimized by the query optimizer, and is not persisted. Missing index information is kept only until SQL Server is restarted. Database administrators should periodically make backup copies of the missing index information if they want to keep it after server recycling.

Neither column of the output result set is a key, but together they form an index key.


The result set for this DMV is limited to 600 rows. Each row contains one missing index. If you have more than 600 missing indexes, you should address the existing missing indexes so you can then view the newer ones.


To query this dynamic management view, users must be granted the VIEW SERVER STATE permission or any permission that implies the VIEW SERVER STATE permission.

See Also

sys.dm_db_missing_index_columns (Transact-SQL)
sys.dm_db_missing_index_details (Transact-SQL)
sys.dm_db_missing_index_group_stats (Transact-SQL)