thePG_TRGM모듈 제공ASCII영숫자 텍스트 기반
thePG_TRGM모듈은 요점을 제공합니다좋아요andilike쿼리. (이 지수는 그렇습니다
예 :
테이블 생성 test_trgm (t text);
또는
gin (t gin_trgm_ops)을 사용하여 test_trgm에서 인덱스 trgm_idx 생성;
이 시점에서에 대한 색인이 있습니다.t유사성을 위해 사용할 수있는 열
선택 t, 유사성 (t, 'Word') sml로Word'
이것은 텍스트 열의 모든 값을 반환합니다.Word,
위의 쿼리의 변형은입니다.
select t, t <-- 'Word' Dist
이것은 GIST 인덱스에 의해 상당히 효율적으로 구현 될 수 있습니다.
시작윈 토토9.1,이 인덱스 유형은 또한 인덱스 검색을 지원합니다좋아요andilike, 예를 들어
선택 *에서 test_trgm에서 t where '%foo%bar';
인덱스 검색은 트리 그램을 추출하여 작동합니다
GIST와 GIN 인덱싱 사이의 선택은
Trigram 매칭은 사용될 때 매우 유용한 도구입니다.
첫 번째 단계는 포함 된 보조 테이블을 생성하는 것입니다.
선택한 단어로 테이블 단어를 작성하십시오
여기서문서는 테이블입니다BodyText우리단순to_tsvector
a
다음, 단어 열에서 트리 그램 색인 생성 :
gin을 사용하여 단어에서 index words_idx 만들기 (Word gin_trgm_ops);
지금, aselect쿼리와 유사합니다
참고 :이후단어테이블은 별도의 정적 테이블로 생성되었습니다.
GIST 개발 사이트http : //www.sai.msu.su/~megera/postgres/gist/
Tsearch2 개발 사이트http : //www.sai.msu.su/~megera/postgres/gist/tsearch/v2/
Oleg Bartunov<oleg@sai.msu.su
,
Teodor Sigaev<teodor@sigaev.ru
,
문서 : Christopher Kings-Lynne
이 모듈은 모스크바의 Delta-Soft Ltd.가 후원합니다.
이전 | 홈 | PostgreSQL : 문서 : 9.2 : 사설 토토 |
pgstattuple | up | SEG |