테이블의 rowcount와 예약된 공간, 인덱스 공간 사이즈.
sp_spaceused 를 사용해도 되지만, 테이블 여러개를 한번에 조회시 사용하면 좋다.
--================================== -- DB 테이블 목록, row수 ceusee -- ================================= DECLARE @tablename sysname SET @tablename = '' SELECT sys.name, ind.row_count ,convert(int,(sum(convert(numeric(15,2),reserved) * m.low /1024))) as 'reserved(KB)' ,convert(int,(sum(convert(numeric(15,2),used) * m.low /1024))) as 'indexp(KB)' FROM sys.sysobjects as sys join sys.dm_db_partition_stats as ind on sys.id = ind.object_id join sysindexes as i on i.id = ind.object_id ,master.dbo.spt_values as m WHERE sys.type = 'U' and ind.index_id < 2 and m.number = 1 and m.type = 'E' and i.indid in (0,1,255) and sys.name = @tablename ) GROUP BY sys.name, ind.row_count
'T-SQL' 카테고리의 다른 글
T-SQL::특정 objects 찾기 (0) | 2010.04.04 |
---|---|
T-SQL::Attach (1) | 2009.12.01 |
T-SQL::Index Script (1) | 2009.11.19 |
T-SQL::List all indexes in database (0) | 2009.11.19 |