이 문서는 지원되지 않는 버전의 PostgreSQL을위한 것입니다.
당신은에 대해 같은 페이지를 보려고 할 수 있습니다PostgreSQL : 문서 : 17 : 11.8. 사설 토토 색인버전 또는 위에 나열된 다른 지원 버전 중 하나입니다.

11.7. 부분 토토 핫

A 부분 토토 핫는 제작 된 토토 핫입니다술어

부분 토토 핫을 사용하는 주요 이유 중 하나는 피하는 것입니다.예 11-1

예 11-1. 부분 토토 핫 설정

웹 서버 액세스 로그를

다음과 같은 테이블을 가정합니다.

테이블 생성 access_log (

우리의 예에 맞는 부분 토토 핫을 만들려면

access_log (client_ip)에서 index access_log_client_ip_ix 만들기

이 색인을 사용할 수있는 일반적인 쿼리는 다음과 같습니다.

access_log에서 * 선택 * url = '/index.html'및 client_ip = inet '212.78.10.32';

이 색인을 사용할 수없는 쿼리는 다음과 같습니다.

선택 * ac

이런 종류의 부분 토토 핫이

부분 토토 핫에 대한 또 다른 사용은 값을 제외하는 것입니다.예 11-2. 이것"무관심"존재의 가치

예 11-2. 부분 토토 핫 설정

청구 및 실금이 모두 포함 된 테이블이있는 경우

주문에서 토토 핫 orders_unbilled_index 만들기 (Order_nr)

이 토토 핫을 사용할 수있는 쿼리는입니다.

선택 * 청구 된 명령에서 청구 된 명령에서 rebliced ​​<10000;

그러나 인덱스는 그렇지 않은 쿼리에도 사용할 수 있습니다.Order_nr전혀, 예를 들어

선택 * 청구 된 명령에서 청구 된 명령에서 금액> 5000.00;

이것은의 부분 토토 핫만큼 효율적이지 않습니다.금액열은 이후입니다

이 쿼리는이 토토 핫을 사용할 수 없습니다.

Orders에서 Order_nr = 3501;에서 선택 * 선택 *

3501 명령은 청구 된 것 중 하나 일 수 있습니다.

예제또한 인덱스 된 열과 열을 보여줍니다PostgreSQL부분 인덱스를 지원합니다여기서쿼리 조건PostgreSQL정교함이 없습니다"x <1"암시"x <2"; 그렇지 않으면 술어 조건이 있어야합니다여기서조건 또는 인덱스는 사용할 수있는 것으로 인식되지 않습니다."x "x <2"모두

부분 토토 핫에 대한 세 번째 사용은예 11-3. 이것

예 11-3. 부분적 고유 한 설정

테스트 결과를 설명하는 테이블이 있다고 가정하십시오. 우리"성공"주어진 주제에 대한 입장 및"실패"항목. 여기 하나가 있습니다

테이블 테스트 생성 (

이것은 거기에있을 때 특히 효율적인 방법입니다.

마지막으로 부분 토토 핫을 사용하여PostgreSQL합리적으로 만듭니다

부분 토토 핫을 설정하면PostgreSQL작업. ~ 안에

부분 토토 핫에 대한 자세한 내용은 찾을 수 있습니다. 부분 토토 핫의 사례 , Postgres의 부분 토토 핫 : 연구일반화 된 부분 토토 핫 (캐시 버전) .