- 특정 테이블의 크기 확인
USE [데이터베이스명];
GO
DECLARE @TableName NVARCHAR(256) = N'스키마명.테이블명';
DECLARE @SpaceUsed TABLE (
name NVARCHAR(256),
rows CHAR(20),
reserved NVARCHAR(20),
data NVARCHAR(20),
index_size NVARCHAR(20),
unused NVARCHAR(20)
);
INSERT INTO @SpaceUsed
EXEC sp_spaceused @TableName;
SELECT
name AS TableName,
CAST(rows AS BIGINT) AS TotalRows,
CAST(REPLACE(reserved, ' KB', '') AS FLOAT) / 1024 / 1024 AS Reserved_GB,
CAST(REPLACE(data, ' KB', '') AS FLOAT) / 1024 / 1024 AS Data_GB,
CAST(REPLACE(index_size, ' KB', '') AS FLOAT) / 1024 / 1024 AS IndexSize_GB,
CAST(REPLACE(unused, ' KB', '') AS FLOAT) / 1024 / 1024 AS Unused_GB
FROM @SpaceUsed;
TableName
TotalRows
Reserved_GB : 현재 예약하고 있는 총 공간(데이터, 인덱스, 비어 있는 공간 모두 포함), 즉 미리 할당된 공간
Data_GB : 실제 데이터가 차지하는 공간
IndexSize_GB
Unused_GB