파일 그룹별 Object 및 Object의 Index 정보 리스트
sys.filegroups, sys.indexes, sys.database_files, sys.data_spaces 시스템 카탈로그를 사용하여
파일 그룹별 Object 및 Object의 Index 정보를 볼 수 있는 쿼리를 만들어보자.
SELECT OBJECT_NAME(i.[object_id]) AS [ObjectName]
,i.[index_id] AS [IndexID] ,i.[name] AS [IndexName] ,i.[type_desc] AS [IndexType] ,i.[data_space_id] AS [DatabaseSpaceID] ,f.[name] AS [FileGroup] ,d.[physical_name] AS [DatabaseFileName] FROM [sys].[indexes] i INNER JOIN [sys].[filegroups] f ON f.[data_space_id] = i.[data_space_id] INNER JOIN [sys].[database_files] d ON f.[data_space_id] = d.[data_space_id] INNER JOIN [sys].[data_spaces] s ON f.[data_space_id] = s.[data_space_id] WHERE OBJECTPROPERTY(i.[object_id], 'IsUserTable') = 1 ORDER BY OBJECT_NAME(i.[object_id]) ,f.[name] ,i.[data_space_id] GO |
AdventureWorks2008 샘플 데이터베이스에서 실행시킨 결과
참고 : http://basitaalishan.com/2013/03/03/list-all-objects-and-indexes-per-filegroup-partition/
'DBMS > SQL Server' 카테고리의 다른 글
[SQL Server] 컬럼 추가, 수정, 삭제하기 (0) | 2013.03.08 |
---|---|
[SQL Server] Database Landscape Map (0) | 2013.03.05 |
[SQL Server] 특수문자 제거하는 함수 (0) | 2013.02.24 |
[SQL Server] OBJECT_ID 함수를 이용한 개체 존재 여부 확인 (0) | 2013.02.23 |
[SQL Server] where 절에서는 별칭(alias)을 사용할 수 없다. (0) | 2013.02.19 |