SQL Server/SQL 용어

부분 범위 처리 (Partial Range Scan)

SungWookKang 2015. 7. 22. 08:53
반응형

부분 범위 처리 (Partial Range Scan)

 

부분 범위 처리 (Partial Range Scan) :

어떤 SQL에서 WHERE 절에 주어진 조건을 만족하는 전체범위를 처리하지 않고 운반단위(Array size)까지만 먼저 처리하여

그 결과를 추출시킨 뒤 다음 작업을 계속하겠다는 사용자의 요구가 있을 때까지 잠정적으로 수행을 멈추는 처리 방식.

   

모든 데이터를 처리하지 않고 일부만 처리하여 결과를 추출하므로 사용자가 아무리 넓은 범위의 처리를 요구하더라도 아주 빠른

수행속도를 보장 받을 수 있다.

   

   

부분 범위 처리 조건 :

1. WHERE 절에 GROUP BY 또는  ORDER BY 절이 있으면 부분 범위 처리를 할 수 없다.

2. UNION, MINUS, INTERSECT를 사용한 SQL은 부분 범위 처리를 할 수 없다.

   

단, 옵티마이져에 의해 선택된 인덱스와 ORDER BY에 사용된 컬럼이 동일 하다면 인덱스 순서가 곧 ORDER BY가 되므로 옵티마이져는

ORDER BY를 무시하고 인덱스로 처리되는 실행게획을 수립하여 부분범위 처리를 한다.

   

주의점 :

ORDER BY에 사용된 컬럼의 순서와 개수가 생성된 인덱스와 동일해야만 ORDER BY가 무시 되므로 원하는 결과가 인덱스와 동일하다면

가능한 ORDER BY 절을 사용하지 않는 것이 좋다.

반응형