테이블 A
COL1 COL2 STATUS
<쿼리>
SELECT COUNT(*) FROM A ==> 4,892,456
SELECT COUNT(*) FROM A WHERE STATUS = 'ON' ==> 777,381
<인덱스 생성>
Create index ix2_A on A (COL1) ON [PRIMARY]
Create index ix2_A on A (STATUS) ON [PRIMARY]
<쿼리>
SELECT COL1, CO2, STATUS FROM A
WHERE STATUS = 'ON'
이렇게 했는데 1분 1초가 걸렸습니다.
약 500만건 미만의 레코드에서 하나의 조건으로 1분 정도 걸리는게 정상 인가요?
인덱스 생성이 잘못된 것인지 문의 합니다.
위 쿼리는 실제실행계획을 보면 알겠지만 풀스캔을 탈것으로 예상됩니다.
4,892,456 중 777,381 건수는 대략 20프로 정도를 밀도를 보이는데..
대략 0.3 이하로 내려가야지 인덱스를 탈수 가 있습니다..
ps) 질문 게시판으로 가는게 좋지 않을까요 ㅎㅎ