이 문서는 지원되지 않는 PostgreSQL 버전에 대한 것입니다.
당신은 다음과 같은 페이지를 보고 싶을 수도 있습니다.사설 토토 사이트 PostgreSQL : 문서 : 17 : 11.2. 색인 유형버전 또는 위에 나열된 다른 지원 버전 중 하나를 사용하세요.

11.2. 젠 토토 유형

PostgreSQL여러 가지 제공 젠 토토 유형: B-트리, 해시, GiST 및 GIN. 각 젠 토토 유형은 다양한 유형에 가장 적합한 다양한 알고리즘 쿼리. 기본적으로는젠 토토 생성명령은 가장 일반적인 젠 토토에 맞는 B-트리 젠 토토를 생성합니다. 상황.

B-트리는 데이터에 대한 동등성 및 범위 쿼리를 처리할 수 있습니다. 어떤 순서로 정렬됩니다. 특히,포스트그레SQL쿼리 플래너는 다음 사용을 고려할 것입니다. 인덱스화된 열이 포함될 때마다 B-트리 인덱스 다음 연산자 중 하나를 사용하여 비교합니다.

<
<=
=
=
이러한 연산자의 조합과 동일한 구성, 같은사이그리고IN, B-트리 젠 토토로도 구현 가능 검색. 또한,NULL임또는NULL이 아닙니다인덱스 열의 조건은 다음과 같습니다. B-트리 인덱스와 함께 사용됩니다.

최적화 프로그램은 쿼리에 B-트리 젠 토토를 사용할 수도 있습니다. 패턴 일치 연산자 관련좋아요그리고~ if패턴은 일정하며 문자열의 시작 부분에 고정됨(예:col LIKE 'foo%'또는col ~ '^foo'하지만 아님col LIKE '%bar'. 그러나 데이터베이스가 C 로케일을 사용하지 않는 경우에는 다음이 필요합니다. 지원할 특수 연산자 클래스를 사용하여 인덱스를 생성합니다. 패턴 일치 쿼리의 인덱싱; 참조섹션 11.9아래. 그것은 또한 B-트리 젠 토토를 사용할 수 있음좋아요그리고~*, 그러나 패턴이 시작되는 경우에만 해당 알파벳이 아닌 문자, 즉 알파벳이 아닌 문자 대문자/소문자 변환의 영향을 받습니다.

해시 인덱스는 단순 동등 비교만 처리할 수 있습니다. 는 쿼리 플래너는 해시 인덱스 사용을 고려할 것입니다. 인덱싱된 열은 다음을 사용하여 비교에 포함됩니다.=연산자. 다음 명령은 다음과 같은 데 사용됩니다. 해시 인덱스를 생성합니다:

젠 토토 생성이름켜짐테이블해시 사용 중();
주의

해시 인덱스 작업은 현재 WAL에 기록되지 않으므로 해시 인덱스를 다시 작성해야 할 수도 있습니다.REINDEX데이터베이스 충돌 후(있는 경우) 기록되지 않은 변경 사항이었습니다. 또한 해시 인덱스의 변경 사항은 다음과 같습니다. 스트리밍 또는 파일 기반 복제를 통해 복제되지 않음 초기 기본 백업 이후 잘못된 답변을 제공합니다. 이후에 이를 사용하는 쿼리에 적용됩니다. 이러한 이유로, 해시 인덱스 사용은 현재 권장되지 않습니다.

GiST 젠 토토는 단일 종류의 젠 토토가 아니라 오히려 다양한 인덱싱 전략이 포함된 인프라 구현될 수 있습니다. 이에 따라 특정 사업자들은 사용할 수 있는 GiST 젠 토토는 인덱싱에 따라 다릅니다. 전략(the연산자 클래스). 로서 예를 들어, 표준 분포포스트그레SQLGiST 연산자 클래스 포함 다음을 지원하는 여러 2차원 기하학적 데이터 유형에 대해 다음 연산자를 사용하여 색인된 쿼리:

<<
&<
&
<<|
&<|
|&
|
@
<@
~=
&&
(참조PostgreSQL : 문서 : 9.0 : 무지개 토토 함수 및 연산자이 연산자의 의미에 대해 알아보세요.) 기타 많은 GiST 연산자 수업은 다음에서 가능합니다.기여컬렉션 또는 별도의 프로젝트로. 자세한 내용은 참조스포츠 토토 : 문서 : 9.0 : 스포츠 토토 Indexes.

GIN 인덱스는 다음과 같은 값을 처리할 수 있는 반전된 인덱스입니다. 예를 들어 배열과 같이 두 개 이상의 키를 포함합니다. GiST와 마찬가지로 GIN도 가능합니다. 다양한 사용자 정의 색인 전략을 지원하며 GIN 인덱스를 사용할 수 있는 특정 연산자는 다양합니다. 인덱싱 전략에 따라 다릅니다. 예를 들어, 표준 분포PostgreSQL1차원 배열에 대한 GIN 연산자 클래스를 포함합니다. 다음 연산자를 사용하여 색인화된 쿼리를 지원합니다.

<@
@
=
&&
(참조PostgreSQL : 문서 : 9.0 : 무지개 토토 함수 및 연산자용 이 연산자의 의미.) 다른 많은 GIN 연산자 클래스 에서 사용할 수 있습니다.기여컬렉션 또는 별도의 프로젝트로. 자세한 내용은 참조53장.