| PostgreSQL 9.3.25 문서 | ||||
|---|---|---|---|---|
| PostgreSQL : 문서 : 9.3 : 토토 결과 예 | 사설 토토 : 문서 : 9.3 : 전문 검색 | 12장. 전체 텍스트 검색 | PostgreSQL : 문서 : 9.3 : 토토 사이트 추천 and Gin Index 유형 | |
사용자 정의 텍스트 검색 구성의 동작은 쉽게 혼란스러워집니다. 이 섹션에서 설명하는 기능은 다음과 같습니다. 텍스트 검색 개체를 테스트하는 데 유용합니다. 완전한 테스트를 할 수 있습니다. 구성하거나 파서 및 사전을 별도로 테스트하세요.
함수ts_debug쉽게 허용
텍스트 검색 구성을 테스트 중입니다.
ts_debug([ 구성 regconfig, ] 문서 텍스트,
밖으로별칭 텍스트,
밖으로설명 텍스트,
밖으로토큰 텍스트,
밖으로사전 regdictionary[],
밖으로사전 regdictionary,
밖으로어휘 텍스트[])
레코드 세트를 반환합니다.
ts_debug정보 표시
모든 토큰에 대해문서다음과 같이
파서에 의해 생성되고 구성된
사전. 다음에서 지정한 구성을 사용합니다.구성또는default_text_search_config그 인수가 다음과 같은 경우
생략했습니다.
ts_debug각각에 대해 하나의 행을 반환합니다.
파서가 텍스트에서 식별한 토큰입니다. 반환된 열
이다
별칭 텍스트— 토큰 유형의 짧은 이름
설명 텍스트— 토큰 유형 설명
토큰 텍스트— 토큰 텍스트
사전 regdictionary[]—에 의해 선택된 사전 이 토큰 유형에 대한 구성
사전 regdictionary— 인식한 사전 토큰 또는NULL아무도 하지 않았다면
어휘 텍스트[]— 사전에서 생성된 어휘소 토큰을 인식했거나NULL아무도 하지 않았다면; 빈 배열({})는 그랬다는 뜻입니다. 불용어로 인식됨
다음은 간단한 예입니다:
SELECT * FROM ts_debug('english','a fat cat sat on a mat - it eat a fat rat');
별칭 | 설명 | 토큰 | 사전 | 사전 | 어휘소
---------+------+-------+---+---------------+---------
ASCII워드 | 단어, 모두 ASCII | | e토토 사이트 추천lish_stem | 영어_줄기 |
공백 | 공간 기호 | | | |
ASCII워드 | 단어, 모두 ASCII | 지방 | e토토 사이트 추천lish_stem | 영어_줄기 | 지방
공백 | 공간 기호 | | | |
ASCII워드 | 단어, 모두 ASCII | 고양이 | e토토 사이트 추천lish_stem | 영어_줄기 | 고양이
공백 | 공간 기호 | | | |
ASCII워드 | 단어, 모두 ASCII | 토 | e토토 사이트 추천lish_stem | 영어_줄기 | 앉았다
공백 | 공간 기호 | | | |
ASCII워드 | 단어, 모두 ASCII | 에 | e토토 사이트 추천lish_stem | 영어_줄기 |
공백 | 공간 기호 | | | |
ASCII워드 | 단어, 모두 ASCII | | e토토 사이트 추천lish_stem | 영어_줄기 |
공백 | 공간 기호 | | | |
ASCII워드 | 단어, 모두 ASCII | 매트 | e토토 사이트 추천lish_stem | 영어_줄기 | 매트
공백 | 공간 기호 | | | |
공백 | 공간 기호 | - | | |
ASCII워드 | 단어, 모두 ASCII | 그것 | e토토 사이트 추천lish_stem | 영어_줄기 |
공백 | 공간 기호 | | | |
ASCII워드 | 단어, 모두 ASCII | 먹었다 | e토토 사이트 추천lish_stem | 영어_줄기 | 먹었다
공백 | 공간 기호 | | | |
ASCII워드 | 단어, 모두 ASCII | | e토토 사이트 추천lish_stem | 영어_줄기 |
공백 | 공간 기호 | | | |
ASCII워드 | 단어, 모두 ASCII | 지방 | e토토 사이트 추천lish_stem | 영어_줄기 | 지방
공백 | 공간 기호 | | | |
ASCII워드 | 단어, 모두 ASCII | 쥐 | e토토 사이트 추천lish_stem | 영어_줄기 | 쥐
보다 광범위한 데모를 위해 먼저 다음을 만듭니다.public.e토토 사이트 추천lish구성 및 Ispell 사전 영어의 경우:
텍스트 검색 구성 생성 public.e토토 사이트 추천lish ( COPY = pg_catalog.english );
텍스트 검색 사전 만들기 e토토 사이트 추천lish_ispell(
템플릿 = ispell,
DictFile = 영어,
AffFile = 영어,
StopWords = 영어
);
텍스트 검색 구성 변경 public.e토토 사이트 추천lish
e토토 사이트 추천lish_ispell, e토토 사이트 추천lish_stem을 사용하여 asciiword에 대한 매핑 변경;
SELECT * FROM ts_debug('public.e토토 사이트 추천lish','가장 밝은 초신성');
별칭 | 설명 | 토큰 | 사전 | 사전 | 어휘소
---------+----+-------------+------------------+---+-------------
ASCII워드 | 단어, 모두 ASCII | | e토토 사이트 추천lish_ispell,e토토 사이트 추천lish_stem | e토토 사이트 추천lish_ispell |
공백 | 공간 기호 | | | |
ASCII워드 | 단어, 모두 ASCII | 가장 밝다 | e토토 사이트 추천lish_ispell,e토토 사이트 추천lish_stem | e토토 사이트 추천lish_ispell | 밝은
공백 | 공간 기호 | | | |
ASCII워드 | 단어, 모두 ASCII | 초신성 | e토토 사이트 추천lish_ispell,e토토 사이트 추천lish_stem | 영어_줄기 | 초신성
이 예에서는 단어가장 밝음이었음 파서가 다음과 같이 인식합니다.ASCII 단어(별칭asciiword). 이 토큰 유형의 경우 사전 목록은e토토 사이트 추천lish_ispell그리고e토토 사이트 추천lish_stem. 해당 단어는 다음에서 인식되었습니다.e토토 사이트 추천lish_ispell, 이는 다음과 같이 감소했습니다. 명사밝다. 단어초신성다음에 알려지지 않음e토토 사이트 추천lish_ispell사전이므로 다음으로 전달되었습니다. 다음 사전이었고 다행히도 인식되었습니다(실제로는e토토 사이트 추천lish_stem은 Snowball 사전입니다 모든 것을 인식합니다. 그래서 맨 마지막에 넣었다 사전 목록 중).
단어그다음에 의해 인식되었습니다.e토토 사이트 추천lish_ispell불용어로 사전 (섹션 12.6.1) 색인이 생성되지 않습니다. 공백도 폐기됩니다. 구성에서는 사전을 전혀 제공하지 않기 때문에 그들을.
명시적으로 지정하여 출력 너비를 줄일 수 있습니다 보고 싶은 열:
별칭, 토큰, 사전, 어휘 선택
FROM ts_debug('public.e토토 사이트 추천lish','가장 밝은 초신성');
별칭 | 토큰 | 사전 | 어휘소
---------+-------------+---+-------------
ASCII워드 | | e토토 사이트 추천lish_ispell |
공백 | | |
ASCII워드 | 가장 밝다 | e토토 사이트 추천lish_ispell | 밝은
공백 | | |
ASCII워드 | 초신성 | 영어_줄기 | 초신성다음 함수를 사용하면 텍스트 검색을 직접 테스트할 수 있습니다. 파서.
ts_parse(파서_이름 텍스트, 문서 텍스트,
밖으로토키드 정수, 아웃토큰 텍스트) 반환레코드 집합ts_parse(parser_oid oid, 문서 텍스트,
밖으로토키드 정수, 아웃토큰 텍스트) 반환레코드 집합
ts_parse주어진 내용을 분석합니다문서그리고 일련의 결과를 반환합니다.
구문 분석을 통해 생성된 각 토큰에 대해 하나씩 기록합니다. 각 기록
다음을 포함합니다토키드할당된 항목 표시
토큰 유형 및 a토큰텍스트입니다
토큰의. 예를 들어:
SELECT * FROM ts_parse('기본값', '123 - 숫자');
토키드 | 토큰
------+---------
22 | 123
12 |
12 | -
1 | 에이
12 |
1 | 숫자
ts_token_type(파서_이름 텍스트, 아웃토키드 정수,
밖으로별칭 텍스트, 아웃설명 텍스트) 반환레코드 집합ts_token_type(parser_oid oid, 아웃토키드 정수,
밖으로별칭 텍스트, 아웃설명 텍스트) 반환레코드 집합
ts_token_type테이블을 반환합니다.
이는 지정된 파서가 수행할 수 있는 각 토큰 유형을 설명합니다.
인정하다. 각 토큰 유형에 대해 표는 정수를 제공합니다.토키드파서가 라벨을 지정하는 데 사용하는 것입니다.
해당 유형의 토큰인별칭그 이름은
구성 명령의 토큰 유형 및 짧은설명. 예를 들어:
SELECT * FROM ts_token_type('기본값');
토키드 | 별칭 | 설명
-----+------+--------------------------------------------
1 | ASCII워드 | 워드, 모두 ASCII
2 | 단어 | 단어, 모든 문자
3 | 숫자 | 단어, 문자, 숫자
4 | 이메일 | 이메일 주소
5 | URL | URL
6 | 호스트 | 주인
7 | 부유물 | 과학적 표기법
8 | 버전 | 버전 번호
9 | hword_numpart | 하이픈으로 연결된 단어 부분, 문자 및 숫자
10 | hword_part | 하이픈으로 연결된 단어 부분, 모든 문자
11 | hword_asciipart | 하이픈으로 연결된 단어 부분, 모두 ASCII
12 | 공백 | 공간 기호
13 | 태그 | XML 태그
14 | 프로토콜 | 프로토콜 헤드
15 | 숫자 | 하이픈으로 연결된 단어, 문자 및 숫자
16 | ASCII워드 | 하이픈으로 연결된 단어, 모두 ASCII
17 | 한워드 | 하이픈으로 연결된 단어, 모든 문자
18 | URL_경로 | URL 경로
19 | 파일 | 파일 또는 경로 이름
20 | 플로트 | 십진법
21 | 정수 | 부호 있는 정수
22 | 단위 | 부호 없는 정수
23 | 엔터티 | XML 엔터티그ts_lexize기능을 통해
사전 테스트.
ts_lexize(dict regdictionary, 토큰 텍스트) 반환텍스트[]
ts_lexize배열을 반환합니다.
입력인 경우 어휘토큰알려져 있습니다
사전에 저장하거나, 토큰이 알려진 경우 빈 배열로 저장합니다.
사전이지만 불용어입니다. 또는NULL알 수 없는 단어인 경우.
예:
SELECT ts_lexize('e토토 사이트 추천lish_stem', '별');
ts_lexize
-----------
별
SELECT ts_lexize('e토토 사이트 추천lish_stem', 'a');
ts_lexize
-----------
참고:그
ts_lexize함수는 단일을 기대합니다토큰, 텍스트가 아닙니다. 여기에 경우가 있습니다 혼란스러울 수 있습니다.SELECT ts_lexize('thesaurus_astro','초신성 별')은 null입니다. ?열? ---------- 티동의어 사전thesaurus_astro문구를 알고 있습니다초신성별하지만
ts_lexize입력을 구문 분석하지 않으므로 실패합니다. 텍스트이지만 단일 토큰으로 처리합니다. 사용plainto_tsquery또는to_tsVector동의어 사전을 테스트하기 위해, 예:SELECT plainto_tsquery('초신성 별'); plainto_tsquery ----------------- 'sn'
| 이전 | 배트맨 토토 : 문서 : 9.3 : 배트맨 토토 9.3.25 문서화 | 다음 |
| 구성 예 | 위로 | GiST 및 GIN 지수 유형 |