SQL SERVER
SQL SERVER INCLUDE Nonclustered index ( covered index)
jiahn_21
2022. 5. 6. 10:42
이번 시간에는 Include index 에 대해 알아 보도록 하겠습니다.
넌클러스터 인덱스와 클러스터 인덱스의 특징에 대해선 아래와 같이 이전 글을 참고부탁드립니다.
2022.04.27 - [SQL SERVER] - SQL SERVER clustered index , nonclustered index
SQL SERVER clustered index , nonclustered index
오늘은 sql server의 Clustered index와 nonclustered index의 특징에 대해 알아보겠습니다. 인덱스란? 테이블의 조회 속도를 빠르게 하기 위한 수단 다만, 데이터가 변경 (update, delete , insert)되는 경우 인..
pdw5544.tistory.com
Include 인덱스 특징
- 인덱스 키가 아닌 열도 추가가 가능
- 최대 16개의 키 열, 최대 900바이트의 인덱스 키 크기가 초과되는 것을 피할 수 있음
- 검색 및 조회시 실제 데이터 페이지에 접근하지 않아, rid look up/ Key lookup을 방지
Include 인덱스 생성방법
CREATE NONCLUSTERED INDEX [IX_SalesOrderDetail2_ProductID_include] ON SalesOrderDetail2
(
[ProductID] ASC
)
INCLUDE (SalesOrderID)
인덱스 페이지 확인
DBCC Ind(adventureWorks2019, SalesOrderDetail2, 2)
DBCC PAGE(adventureWorks2019, 1, 26064,3)
실행계획 및 통계 비교
SELECT [SalesOrderID]
FROM [AdventureWorks2019].dbo.SalesOrderDetail2 with(index= [IX_SalesOrderDetail2_ProductID_include])
where ProductID = 777
SELECT [SalesOrderID]
FROM [AdventureWorks2019].dbo.SalesOrderDetail2 with(index= [IX_SalesOrderDetail2_ProductID])
where ProductID = 777