| PostgreSQL 9.1.24 문서 | ||||
|---|---|---|---|---|
| 토토 사이트 추천 : 문서 : 9.1 : btree_gin | 위로 | 부록 F. 추가 제공 모듈 | 스포츠 토토 사이트 : 문서 : 9.1 : chkpass | |
btree_gistGiST 인덱스 제공 B-트리와 동등한 동작을 구현하는 연산자 클래스 데이터 유형int2, int4, int8, 플로트4, 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/추가 정보를 확인하세요.