dict_스포츠 토토(확장 동의어 사전)은 전체 텍스트 검색을 위한 추가 사전 템플릿의 예입니다. 이 사전 유형은 단어를 동의어 그룹으로 대체하므로 동의어를 사용하여 단어를 검색할 수 있습니다.
A dict_스포츠 토토사전은 다음 옵션을 허용합니다:
matchorig원래 단어가 사전에 의해 허용되는지 여부를 제어합니다. 기본값은참.
동의어와 일치사전에서 동의어를 허용할지 여부를 제어합니다. 기본값은거짓.
킵포릭원래 단어가 사전 출력에 포함되는지 여부를 제어합니다. 기본값은참.
keepsynonyms동의어가 사전 출력에 포함되는지 여부를 제어합니다. 기본값은참.
규칙은 동의어 목록이 포함된 파일의 기본 이름입니다. 이 파일은 다음 위치에 저장되어야 합니다.$SHAREDIR/tsearch_data/(어디에서$SHAREDIR의미포스트그레SQL설치의 공유 데이터 디렉토리). 이름은 다음으로 끝나야 합니다..rules(다음에 포함되지 않음규칙매개변수).
규칙 파일의 형식은 다음과 같습니다:
각 줄은 줄의 첫 번째 단어에 대한 동의어 그룹을 나타냅니다. 동의어는 공백으로 구분되므로 다음과 같습니다.
단어 syn1 syn2 syn3
날카로운 (#) 기호는 댓글 구분 기호입니다. 줄의 어느 위치에나 나타날 수 있습니다. 나머지 줄은 건너뜁니다.
보세요스포츠 토토_sample.rules, 다음 위치에 설치됨$SHAREDIR/tsearch_data/, 예를 들어.
설치 중dict_스포츠 토토확장으로 텍스트 검색 템플릿이 생성됩니다.스포츠 토토_template그리고 사전스포츠 토토이를 기반으로 하며 기본 매개변수를 사용합니다. 예를 들어 매개변수를 변경할 수 있습니다.
mydb# ALTER TEXT SEARCH DICTIONARY 스포츠 토토 (RULES='my_rules', KEEPORIG=false); 텍스트 검색 사전 변경
또는 템플릿을 기반으로 새 사전을 생성하세요.
사전을 테스트하려면 시도해 볼 수 있습니다.
mydb=# SELECT ts_lexize('스포츠 토토', '단어');
ts_lexize
----------
syn1,syn2,syn3
mydb# ALTER TEXT SEARCH DICTIONARY 스포츠 토토 (RULES='my_rules', KEEPORIG=true);
텍스트 검색 사전 변경
mydb=# SELECT ts_lexize('스포츠 토토', '단어');
ts_lexize
----------
단어,syn1,syn2,syn3
mydb# ALTER TEXT SEARCH DICTIONARY 스포츠 토토 (RULES='my_rules', KEEPORIG=false, MATCHSYNONYMS=true);
텍스트 검색 사전 변경
mydb=# SELECT ts_lexize('스포츠 토토', 'syn1');
ts_lexize
----------
syn1,syn2,syn3
mydb# ALTER TEXT SEARCH DICTIONARY 스포츠 토토 (RULES='my_rules', KEEPORIG=true, MATCHORIG=false, KEEPSYNONYMS=false);
텍스트 검색 사전 변경
mydb=# SELECT ts_lexize('스포츠 토토', 'syn1');
ts_lexize
----------
단어
실제 사용에는 설명된 대로 텍스트 검색 구성에 포함됩니다.사설 토토 : 문서 : 10 : 12 장. 전문 검색. 다음과 같을 수 있습니다:
텍스트 검색 구성 변경 english
스포츠 토토, english_stem을 사용하여 단어, asciiword에 대한 매핑 변경;