프로그램/database

sqlserver : Get Table and Index storage size in sql server

mulderu 2014. 2. 20. 17:55

sqlserver   에서 각 테이블이 어느정도 차지 하고 있는지를 알오보기 ...

Get Table and Index storage size in sql server

http://stackoverflow.com/questions/15896564/get-table-and-index-storage-size-in-sql-server


select * from (

SELECT 

t.NAME AS TableName,

p.rows AS RowCounts,

SUM(a.total_pages) * 8 AS TotalSpaceKB, 

SUM(a.used_pages) * 8 AS UsedSpaceKB, 

(SUM(a.total_pages) - SUM(a.used_pages)) * 8 AS UnusedSpaceKB

FROM 

sys.tables t

INNER JOIN      

sys.indexes i ON t.OBJECT_ID = i.object_id

INNER JOIN 

sys.partitions p ON i.object_id = p.OBJECT_ID AND i.index_id = p.index_id

INNER JOIN 

sys.allocation_units a ON p.partition_id = a.container_id

WHERE 

t.NAME NOT LIKE 'dt%' 

AND t.is_ms_shipped = 0

AND i.OBJECT_ID > 255 

GROUP BY 

t.Name, p.Rows

) TAB

ORDER BY 

    TAB.TotalSpaceKB desc