37. 인덱스(Index)의 효과 - 인덱스 사용에 따른 성능(속도) 비교.
.NET프로그래밍/SQL Server 2008 2009. 9. 16. 20:41 |--[1] 전체레코드출력
Select Count(*) From Zip
Go
--[2] 아래두코드를블록잡고Ctrl + L : 예상실행계획--> 성능(비용)비교
-- 비용(성능)은적게들수록좋다.(= 성능이좋다.)
-- Full Scan : 모두훑어보기
Select * From Zip Where Dong Like '%역삼%' -- 50%
Go
Select * From Zip Where Dong Like '역삼%' -- 50%
Go
--[3] SQL Server에서최고의성능향상: 인덱스
-- Dong 필드는자주검색에사용되더라... 그러면, 인덱스를걸자.
Create Index idxZip On Zip(Dong) -- 기본: NonClustered Index : 책의찾아보기(뒷부분)
Go
--[4] 아래두코드를블록잡고Ctrl + L : 예상실행계획--> 성능(비용)비교
-- %로시작해서Like절사용하면인덱스의영향을받지않는다.
Select * From Zip Where Dong Like '%역삼%' -- 60%
Go
Select * From Zip Where Dong Like '역삼%' -- 40%
Go
--[5] 인덱스를삭제
Drop Index idxZip On Zip
Go
--[6] Clustered Index로다시생성
Create Clustered Index idxZip On Zip(Dong) -- Clustered Index : 책의차례/목차(앞)
Go
--[7] 아래두코드를블록잡고Ctrl + L : 예상실행계획--> 성능(비용)비교
Select * From Zip Where Dong Like '%역삼%' -- 99%, Index Scan(모두훑어보기)
Go
Select * From Zip Where Dong Like '역삼%' -- 1%, Index Seek(한번에찾아가기(=목차))
Go
'.NET프로그래밍 > SQL Server 2008' 카테고리의 다른 글
39. 백업 및 복원 (0) | 2009.09.17 |
---|---|
38. 인덱스(Index)의 효과 연습(Clustered Index와 Non-Clustered Index) (0) | 2009.09.16 |
35. DTS - 우편번호 데이터(엑셀파일)를 받아서 DB로 데이터 가져오기 (0) | 2009.09.16 |
34. DTS - 일반 텍스트파일(CSV파일)의 값을 DB로 가져오기 (0) | 2009.09.16 |
Windows Server 2008 / SQL Server 2008 / Visual Studio 복습 (저장프로시저까지) (0) | 2009.09.15 |