단일 색인 스캔은 운영자 클래스의 연산자와 함께 토토 꽁 머니의 열을 와 합류and. 예를 들어, 주어진 index(A, B)쿼리 조건과 같은여기서 a = 5 및 b = 6색인, 그러나 쿼리여기서 a = 5 또는 b = 6색인을 직접 사용할 수 없음.
릴리스 8.1에서 시작,postgresql토토 꽁 머니 할 수 있습니다 다중 인덱스 (동일한 인덱스의 다중 사용 포함) 단일 인덱스 스캔으로 구현할 수없는 케이스를 처리합니다. 시스템이 형성 될 수 있습니다andand또는여러 토토 꽁 머니 스캔에 대한 조건. 을 위한 예, 쿼리와 같은여기서 x = 42 또는 x = 47 또는 x = 53 또는 x = 99는 4 개의 별도로 분해 될 수 있습니다 토토 꽁 머니 스캔x, 각 스캔 사용 쿼리 조항 중 하나. 이 스캔의 결과는 다음과 같습니다 결과를 생성하기 위해 함께 여다. 또 다른 예는 IF입니다 우리는 별도의 인덱스가 있습니다xandy, 하나의 가능한 구현 a Query Like여기서 x = 5 및 y = 6적절한 쿼리 조항과 함께 각 색인을 사용한 다음 인덱스 결과가 함께 결과 행을 식별합니다.
여러 인덱스를 토토 꽁 머니하려면 시스템이 필요한 각각을 스캔합니다 색인 및 준비BitMap메모리 일치하는 것으로보고 된 테이블 행의 위치 제공 그 지수의 조건. 그런 다음 비트 맵이 안정되어 있고 ored됩니다 쿼리에 의해 필요에 따라 함께. 마지막으로 실제 테이블 행입니다 방문하고 반환됩니다. 테이블 행은 물리적으로 방문됩니다 비트 맵이 배치되는 방식이기 때문에 주문하십시오. 이것은 의미합니다 원래 인덱스의 모든 순서가 손실된다는 것입니다. 쿼리에가있는 경우 별도의 정렬 단계가 필요합니다.주문 by절. 이런 이유로, 그리고 각각 추가 색인 스캔이 추가 시간이 추가되면 플래너는 때때로 추가 토토 꽁 머니가 있어도 간단한 토토 꽁 머니 스캔을 사용하도록 선택하십시오. 사용할 수있는 것도 가능합니다.
가장 간단한 애플리케이션을 제외한 모든 것이 다양합니다 유용 할 수있는 인덱스 조합과 데이터베이스 개발자는 어떤 색인을 결정하기 위해 트레이드 오프를 만들어야합니다 제공하다. 때로는 여러 가지색 인덱스가 가장 좋지만 때로는 때로는입니다 별도의 인덱스를 만들고 의존하는 것이 좋습니다. 인덱스-동반 기능. 예를 들어, 작업량에 포함 된 경우 때로는 열만 포함되는 쿼리의 혼합x, 때로는 열y, 때로는 두 열이 있으면 선택할 수 있습니다 두 개의 개별 색인 생성xandy, 토토 꽁 머니 조합에 의존합니다 두 열을 사용하는 쿼리를 처리하십시오. 당신은 또한 만들 수 있습니다 여러 가지 변색 지수(x, y). 이것 토토 꽁 머니는 일반적으로 토토 꽁 머니 조합보다 더 효율적입니다 두 열이 관련된 쿼리의 경우,에서 논의 된 바와 같이섹션 11.3, 거의 일 것입니다 전용 쿼리에 대해서는 쓸모가 없습니다y유일한 색인은 아닙니다. 다색의 조합 색인 및 별도의 색인y합리적으로 잘 봉사하십시오. 전용 쿼리x, 멀티 컬럼 토토 꽁 머니를 사용할 수 있습니다 더 크고 따라서 토토 꽁 머니보다 느리게x혼자. 마지막 대안은 모든 것을 만드는 것입니다 세 가지 색인이지만 테이블이있는 경우에만 합리적 일 것입니다. 업데이트 된 것보다 훨씬 더 자주 검색되고 세 가지 모두 쿼리 유형이 일반적입니다. 쿼리 유형 중 하나가 많은 경우 다른 것보다 덜 일반적입니다. 공통 유형과 가장 잘 일치하는 두 토토 꽁 머니.