SQL Server的单个索引大小
我可以使用SQL Server的单个索引大小,sql,sql-server,Sql,Sql Server,我可以使用sp\u spaceused tablename获取该表的总索引大小。 但是有没有一种方法可以单独获取该表大小的所有索引? 以下脚本是从Rob Garisson的上述答案复制而来的 SELECT i.name AS IndexName, s.used_page_count * 8 AS IndexSizeKB FROM sys.dm_db_partition_stats AS s JOIN sys.indexes
sp\u spaceused tablename
获取该表的总索引大小。
但是有没有一种方法可以单独获取该表大小的所有索引?
以下脚本是从Rob Garisson的上述答案复制而来的
SELECT
i.name AS IndexName,
s.used_page_count * 8 AS IndexSizeKB
FROM sys.dm_db_partition_stats AS s
JOIN sys.indexes AS i
ON s.[object_id] = i.[object_id] AND s.index_id = i.index_id
WHERE s.[object_id] = object_id('dbo.TableName')
ORDER BY i.name
SELECT
i.name AS IndexName,
SUM(page_count * 8) AS IndexSizeKB
FROM sys.dm_db_index_physical_stats(
db_id(), object_id('dbo.TableName'), NULL, NULL, 'DETAILED') AS s
JOIN sys.indexes AS i
ON s.[object_id] = i.[object_id] AND s.index_id = i.index_id
GROUP BY i.name
ORDER BY i.name
可能重复的