by-nc-sa     개발자, DBA가 함께 만들어가는 구루비 지식창고!

대용량_스칼라 서브쿼리의 특성 이해하기




CHAPTER03 스칼라 서브쿼리의 이해와 효율적인 SQL 작성하기 

스칼라 서브쿼리의 특성 이해하기

  • Select Column List절에 사용된 서브쿼리를 스칼라서브쿼리라고 하며, 다음과 같은 특성이 있다.

최대 결과 건수만틈 반복적으로 수행된다

  • 스칼라 서브쿼리의 "최대"로 반복수행되는 횟수는 SQL의 결과 건수다.
  • 스칼라서브쿼리는 입력값에 대한 결과를 Multi Buffer에 저장해 놓으므로 동일한 입력값으로 들어오면, 스칼라서브쿼리를 수행하지 않고 Multi Buffer에 저장한 값을 이용하여 리턴한다.
  • 9i에서는 하나의 버퍼를 이용했으나, 10에서는 Multi Buffer를 사용하여 더 많은 데이터를 저장할 수 있다.
    ( _query_execution_cache_max_size로 버퍼사이즈 조절이 가능하며 디폴트값은 64KB) 

추출되는 데이터는 항상 1건만 유효하다

  • 스칼라서브쿼리에서 추출되는 데이터가 1건을 초과하는 경우, 에러발생

데이터가 추출되지 않아도 된다

  • NULL 데이터를 추출해도 SQL수행에 영향을 미치지 않는다.
  • 스칼라서브쿼리를 조인으로 변경할 때, 조인연결 컬럼은 중복값이 없어야 하며, Outer Join으로 수행해야 한다.

문서정보

Enter labels to add to this page:
Please wait 
Looking for a label? Just start typing.