EXEC sp_MSforeachdb 'USE [?];
SELECT DB_NAME() AS DB,
OBJECT_NAME(i.[object_id]) AS [TableName],
i.name AS [IndexName],
i.index_id,
s.user_seeks,
s.user_scans,
s.user_lookups,
s.user_updates,
i.type_desc AS [IndexType],
s.last_user_seek,
s.last_user_scan,
s.last_user_lookup,
s.last_user_update,
SUM(ps.used_page_count) * 8 / 1024 AS [Used Space (MB)],
SUM(ps.reserved_page_count) * 8 / 1024 AS [Reserved Space (MB)]
FROM
sys.dm_db_index_usage_stats AS s
INNER JOIN sys.indexes AS i
ON s.[object_id] = i.[object_id] AND s.index_id = i.index_id
INNER JOIN sys.dm_db_partition_stats AS ps
ON ps.object_id = i.object_id AND ps.index_id = i.index_id
WHERE
OBJECTPROPERTY(s.[object_id], ''IsUserTable'') = 1
AND s.database_id = DB_ID()
GROUP BY
OBJECT_NAME(i.[object_id]),
i.name,
i.index_id,
s.user_seeks,
s.user_scans,
s.user_lookups,
s.user_updates,
i.type_desc,
s.last_user_seek,
s.last_user_scan,
s.last_user_lookup,
s.last_user_update
ORDER BY
[TableName], [IndexName];
';
No comments:
Post a Comment