[MSSQL]모든 테이블 인덱스 크기 조회

2024. 10. 25. 02:06·♣ Learning Logs/MSSQL

모든 테이블 인덱스 크기 조회하는 쿼리를 정리합니다.

 

# 쿼리 

SELECT 
    s.name AS SchemaName,
    t.name AS TableName,
    i.name AS IndexName,
    p.rows AS TableRows,
SUM(a.total_pages) * 8 AS 'TotalSize(KB)',
    SUM(a.used_pages) * 8 AS 'UsedPages(KB)',
    SUM(a.data_pages) * 8 AS 'DataPages(KB)',
    i.type_desc AS IndexType,
    i.is_unique AS 유니크여부
FROM 
    sys.indexes i
    INNER JOIN sys.tables t ON i.object_id = t.object_id
    INNER JOIN sys.schemas s ON t.schema_id = s.schema_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.is_ms_shipped = 0 and   i.index_id != 0  
GROUP BY s.name, t.name, i.name, i.type_desc, i.is_unique, p.rows
ORDER BY SchemaName asc

 

 

# 각 조인 시스템 테이블 설명 

- sys.indexes: 인덱스에 대한 정보를 제공합니다.

- sys.tables: 데이터베이스의 모든 테이블 정보를 저장

- sys.schemas: 데이터베이스의 모든 스키마 정보를 저장

- sys.partitions: 테이블과 인덱스의 파티션 정보를 저장

- sys.allocation_units: 데이터베이스 객체의 실제 물리적 저장소 할당 정보를 저장

 

# 테이블의 조인 관계 

sys.indexes ─┐

             ├─ object_id ─── sys.tables ─── schema_id ─── sys.schemas

             │

             ├─ object_id, index_id ─── sys.partitions

             │                              │

             └─────────────────── partition_id ─── sys.allocation_units

             

            

 

저작자표시 비영리 변경금지 (새창열림)

'♣ Learning Logs > MSSQL' 카테고리의 다른 글

[MSSQL] 프로파일러 설정  (0) 2024.10.25
[MSSQL] 시스템 스키마  (0) 2024.10.25
[MSSQL] 트랜잭션 로그 시점 복원(.trn)  (0) 2024.10.03
[MSSQL] DB 파일 사이즈 관리하기  (0) 2024.09.25
[MSSQL] 유용한 트랜잭션 롤백 옵션: SET XACT_ABORT ON  (1) 2024.09.25
'♣ Learning Logs/MSSQL' 카테고리의 다른 글
  • [MSSQL] 프로파일러 설정
  • [MSSQL] 시스템 스키마
  • [MSSQL] 트랜잭션 로그 시점 복원(.trn)
  • [MSSQL] DB 파일 사이즈 관리하기
HC.21
HC.21
hc-log 님의 블로그 입니다.
  • HC.21
    HC
    HC.21
  • 전체
    오늘
    어제
    • 분류 전체보기 (21)
      • ♣ Learning Logs (16)
        • 데이터 아키텍처 (1)
        • MSSQL (10)
        • MYSQL (3)
        • SQL (2)
        • MongoDB (1)
      • Project (4)
  • 블로그 메뉴

    • 홈
    • 태그
    • 방명록
  • 링크

  • 공지사항

  • 인기 글

  • 태그

  • 최근 댓글

  • 최근 글

  • hELLO· Designed By정상우.v4.10.0
HC.21
[MSSQL]모든 테이블 인덱스 크기 조회
상단으로

티스토리툴바