h3.3.2.4.1 조건연산자별 비트맵 실행계획

  • 조건연산자는 단지 비트연산의 방식만 다르게 할 뿐이기 때문에 조건연산자의 형태에 따라 처리방법이 크게 달라지지 않는다.
    .

가) 동치(Equal)비교 실행계획

  • 하나의 컬럼을 '='로 비교한 경우.
  • SINGLE VALUE로 나타난다.
    .

나) 범위(Range)비교 실행계획

  • 범위를 나타내는 BETWEEN, LIKE, >, <, >=, <=연산자를 사용하여 비교한 경우.
  • RANGE SCAN이 나타난다.
  • number 타입으로 정의된 컬럼에 LIKE를 사용하였다면 인덱스 FULL SCAN으로 나타난다.
    (B-Tree인덱스에서는 형변환이 일어나기 때문에 인덱스 스캔을 하지 못한다.)
    .

다) AND조건 실행계획

  • 각각 비트맵을 가지고 있는 컬럼들을 AND조건으로 사용하면 각각의 비트맵을 액세스하여 'AND연산'을 한다.
    .

라) OR조건 실행계획

  • OR조건으로 연결된 각각의 컬럼들은 자신의 단위 액세스를 생성하고 그 결과의 비트맵으로 'OR연산'을 실시한다.
    .

마) 부등식(Not equal)비교 실행계획

  • 비트맵 인덱스는 부등식이 사용되면 'BITMAP MINUS' 연산을 수행한다.
    .

바) NULL 비교 실행계획

  • 'IS NULL' 이나 'IS NOT NULL'로 비교하면 NULL을 마치 정상적인 값들과 동일하게 취급하여 각종 비트맵 연산에 참여시킨다.