[MSSQL] 물리적인 테이블 크기 확인

MSSQL에서 테이블 크기를 확인하고 싶을 때
현재 사용하고 있는 데이터베이스(DB)의 테이블 크기(용량)를 확인하고 싶을 때 사용하는 쿼리 공유합니다.
수식을 사용하여 MB, GB로 변경하여 확인이 가능합니다.
아래의 쿼리에서 [DB_NAME] 을 본인의 데이터베이스명으로 변경하여 사용합니다.
USE [DB_NAME]SET NOCOUNT ONCREATE TABLE #TBLSize(Tblname VARCHAR(80),TblRows INT,TblReserved VARCHAR(80),TblData VARCHAR(80),TblIndex_Size VARCHAR(80),TblUnused VARCHAR(80))DECLARE @tablename VARCHAR(80)DECLARE TblName_cursor CURSORFORSELECT NAMEFROM sysobjectsWHERE xType = 'U'OPEN TblName_cursorFETCH NEXT FROM TblName_cursorINTO @tablenameWHILE @@FETCH_STATUS = 0BEGININSERT INTO #tblSize(Tblname,TblRows,TblReserved,TblData,TblIndex_Size,TblUnused)EXEC Sp_SpaceUsed @tablenameFETCH NEXT FROM TblName_cursorINTO @tablenameENDCLOSE TblName_cursorDEALLOCATE TblName_cursorSELECT CAST(Tblname AS VARCHAR(30)) 'Table',CAST(TblRows AS VARCHAR(14)) 'Row Count',CAST(LEFT(TblReserved, CHARINDEX(' KB', TblReserved)) AS INT) 'Total Space (KB)',CAST(TblData AS VARCHAR(14)) 'Data Space',CAST(TblIndex_Size AS VARCHAR(14)) 'Index Space',CAST(TblUnused AS VARCHAR(14)) 'Unused Space'FROM #tblSizeORDER BY 'Total Space (KB)' DESCDROP TABLE #TblSizeSET NOCOUNT OFF
