| PostgreSQL 9.3.25 문서 | ||||
|---|---|---|---|---|
| 스포츠 토토 사이트 : 문서 : 9.3 : btree_gin | PostgreSQL : 문서 : 9.3 : 추가 제공 배트맨 토토 | 부록 F. 추가 제공 모듈 | 다음 | |
btree_gistGiST 인덱스 제공 B-트리와 동등한 동작을 구현하는 연산자 클래스 데이터 유형int2, int4, int8, float4, float8, 숫자, 시간대가 포함된 타임스탬프, 시간대 없는 타임스탬프, 시간은 시간대, 시간대가 없는 시간, 날짜, 간격, oid, 돈, 문자, varchar, 텍스트, 바이테아, 비트, varbit, macaddr, inet및cidr.
일반적으로 이 연산자 클래스는 동등한 표준 B-트리 인덱스 방법이 하나도 부족합니다. 표준 B-트리 코드의 특징: 시행 능력 독창성. 그러나 이들은 제공되지 않는 몇 가지 다른 기능을 제공합니다. 아래에 설명된 대로 B-트리 인덱스와 함께 사용할 수 있습니다. 또한 이들 연산자 클래스는 여러 열로 구성된 GiST 인덱스가 있을 때 유용합니다. 필요한 경우, 일부 열은 다음과 같은 데이터 유형입니다. GiST로 인덱싱할 수 있지만 다른 열은 단순한 데이터 유형입니다. 마지막으로 이러한 연산자 클래스는 GiST 테스트 및 다른 GiST 연산자 클래스를 개발하기 위한 기반입니다.
일반적인 B-트리 검색 연산자 외에도,btree_gist또한 다음에 대한 색인 지원을 제공합니다< ("아니요 같음"). 이는 다음과 함께 사용하면 유용할 수 있습니다.제외 제약, 아래 설명과 같습니다.
또한 자연스러운 거리가 있는 데이터 유형의 경우 미터법,btree_gist거리를 정의합니다 연산자<-, GiST 제공 이 연산자를 사용하여 최근접 검색에 대한 인덱스 지원. 거리 연산자가 제공됩니다.int2, int4, int8, 플로트4, float8, 시간대가 포함된 타임스탬프, 타임스탬프 시간대 없음, 시간 없는 시간 구역, 날짜, 간격, oid및돈.
다음을 사용한 간단한 예btree_gist대신 의브트리:
CREATE TABLE 테스트(int4); -- 인덱스 생성 요점 (a)를 사용하여 테스트 시 INDEX testidx 생성; -- 쿼리 SELECT * FROM test WHERE a < 10; -- 최근접 이웃 검색: "42"에 가장 가까운 10개의 항목을 찾습니다. SELECT *, a <- 42 AS dist FROM test ORDER BY a <- 42 LIMIT 10;
사용제외 제약동물원의 우리에 담을 수 있는 규칙을 시행하기 위해 한 종류의 동물만 있습니다:
= 테이블 생성 동물원( 케이지 정수, 동물 텍스트, EXCLUDE USING Gist(케이지 WITH =, 동물 WITH <) ); = 동물원 VALUES(123, 'zebra')에 삽입; 삽입 0 1 = 동물원 VALUES(123, 'zebra')에 삽입; 삽입 0 1 = 동물원 VALUES(123, '사자')에 삽입; 오류: 충돌하는 키 값이 제외 제약조건 'zoo_cage_animal_excl'을 위반합니다. 세부정보: 키(우리, 동물)=(123, 사자)가 기존 키(우리, 동물)=(123, 얼룩말)과 충돌합니다. = 동물원 VALUES(124, '사자')에 삽입; 삽입 0 1
테오도르 시가예프 (<teodor@stack.net), 올렉
바르투노프 (<oleg@sai.msu.su) 및 얀코
리히터 (<jankorichter@yahoo.de).
참조http://www.sai.msu.su/~megera/postgres/gist/용
추가 정보.