데이터베이스 개발자 질문과 답변 게시판
데이터베이스 개발/운영 관련 질문과 답변을 올리는 게시판입니다. 궁금하신 내용을 이곳에서 문의하시면 SQLER 분들의 답변을 받으실 수 있습니다. 문의를 하실때에는 최근 작업하신 특이 사항이나, 장애 발생 전 상황을 상세히 올려 주시면 답글을 적어주시는 SQLER분들의 답변이 더 정확할 수 있으니 도움 되시길 바랍니다. 쿼리 문의일 경우, 실제 문제가 재현되는 테이블생성, 샘플데이터 생성 쿼리를 함께 올려 주시면 더 빠르고 정확한 쿼리 문의 응답이 가능합니다.
예를들어 다음과 같은 복합인덱스가 있을때..
my_index on tab_A(col1 , col2, col3)
어떤 SQL 쿼리의 WHERE 절에서 col1 에 관한 조건만 있고, col2, col3는 전혀 읽거나 조건이 없을때 이 쿼리가 my_index를 타지 않는것이 정상적인 동작인가요?
이상하게 실행계획상에는 PK_index 만 사용하고 저 인덱스를 사용하지 않는걸로 나와서요..
원래 저는 오라클 관리자인데 오라클에서는 저경우 my_index를 사용하거든요 (물론 cost를 따져서 이익일때..) 그래서 SQL도 당연히 그럴줄만 알았는데 이상하게 자꾸 Pk 인덱스만 타는걸로 나와서 제가 제대로 본건지 궁금해서 질문 올려봅니다.
my_index on tab_A(col1 , col2, col3)
어떤 SQL 쿼리의 WHERE 절에서 col1 에 관한 조건만 있고, col2, col3는 전혀 읽거나 조건이 없을때 이 쿼리가 my_index를 타지 않는것이 정상적인 동작인가요?
이상하게 실행계획상에는 PK_index 만 사용하고 저 인덱스를 사용하지 않는걸로 나와서요..
원래 저는 오라클 관리자인데 오라클에서는 저경우 my_index를 사용하거든요 (물론 cost를 따져서 이익일때..) 그래서 SQL도 당연히 그럴줄만 알았는데 이상하게 자꾸 Pk 인덱스만 타는걸로 나와서 제가 제대로 본건지 궁금해서 질문 올려봅니다.
Comment 1
-
자리비움
2014.11.26 09:53
sql 서버도 cost 따져서 이익일때 my_index 를 사용합니다.sp_recompile 해보신 후 실행계획을 다시 확인해보세요.