btree_gist
데이터 유형에 대한 토토 핫Tree 동등한 동작을 구현하는 GIST 인덱스 운영자 클래스 제공int2
, int4
, int8
, float4
, float8
, 숫자
, 시간대가있는 타임 스탬프
, 시간대가없는 타임 스탬프
, 시간대가있는 시간
, 시간대가없는 시간
, 날짜
, 간격
, OID
, Money
, char
, Varchar
, 텍스트
, BYTEA
, bit
, Varbit
, MacAddr
, MacAddr8
, inet
, CIDR
, uuid
, bool
및 allenum
타입.
일반적으로, 이러한 운영자 클래스는 동등한 표준 토토 핫 트리 색인 방법을 능가하지 않으며 표준 토토 핫 트리 코드의 주요 기능, 즉 고유성을 시행하는 능력이 부족합니다. 그러나 아래에 설명 된대로 토토 핫Tree 지수로 사용할 수없는 다른 기능을 제공합니다. 또한, 이러한 운영자 클래스는 다중 컬럼 GIST 인덱스가 필요할 때 유용하며, 일부 열은 GIST에서만 인덱스 할 수있는 데이터 유형이지만 다른 열은 단순한 데이터 유형 일뿐입니다. 마지막으로, 이러한 운영자 클래스는 GIST 테스트에 유용하고 다른 GIST 운영자 클래스를 개발하기위한 기반으로 유용합니다.
일반적인 토토 핫 트리 검색 연산자 외에도btree_gist
에 대한 색인 지원을 제공합니다<
(“동일하지 않음”). 이것은와 함께 유용 할 수 있습니다.제외 제약 조건, 아래 설명대로.
또한 자연 거리 메트릭이있는 데이터 유형의 경우btree_gist
거리 연산자 정의<--
,이 연산자를 사용하여 가장 가까운 이웃 검색에 대한 GIST 인덱스 지원을 제공합니다. 거리 운영자가 제공됩니다int2
, int4
, int8
, float4
, float8
, 시간대가있는 타임 스탬프
, 시간대가없는 타임 스탬프
, 시간대가없는 시간
, 날짜
, 간격
, OID
및Money
.
이 모듈이 고려됩니다“신뢰할 수있는”생성
현재 데이터베이스의 권한.
간단한 예제 사용btree_gist
대신btree
:
테이블 테스트 생성 (int4); - 색인 생성 GIST (a)를 사용하여 테스트시 인덱스 testIdx를 만듭니다. - 쿼리 테스트에서 * <10; -가장 가까운 이웃 검색 : "42"에 가장 가까운 10 개의 항목을 찾으십시오. a <- 42 Limit 10;에 의해 테스트 순서에서 멀리 떨어진 *, a <- 42를 선택하십시오.
a제외 제약 조건동물원의 케이지에 한 종류의 동물 만 포함 할 수 있다는 규칙을 시행하려면 :
= 테이블 동물원 생성 ( 케이지 정수, 동물 텍스트, GIST 사용 (CAGE with =, Animal with <) 제외 ); = 동물원 값에 삽입 (123, 'Zebra'); 삽입 0 1 = 동물원 값에 삽입 (123, 'Zebra'); 삽입 0 1 = 동물원 값에 삽입 (123, 'lion'); 오류 : 충돌 키 값은 제외 제약 조건 "zoo_cage_animal_excl"을 위반합니다. 세부 사항 : 키 (케이지, 동물) = (123, 사자)는 기존 키 (케이지, 동물) = (123, Zebra)와 충돌합니다. = 동물원 값에 삽입 (124, 'lion'); 삽입 0 1
Teodor Sigaev (<reodor@stack.net
), Oleg Bartunov (<oleg@sai.msu.su
), Janko Richter (<15796_15819
) 및 Paul Jungwirth (<pj@illuminatedcomputing.com
). 보다http : //www.sai.msu.su/~megera/postgres/gist/추가 정보는
문서에 올바른 것이 없다면 일치하지 않습니다. 특정 기능에 대한 귀하의 경험 또는 추가 설명이 필요합니다. 사용이 양식문서 문제를보고하려면