| PostgreSQL 9.2.24 문서 | ||||
|---|---|---|---|---|
| PostgreSQL : 문서 : 9.2 : 토토 사이트 순위 | 위로 | 부록 F. 추가 제공 모듈 | PostgreSQL : 문서 : 9.2 : 토토 캔 | |
그fuzzystrmatch모듈은 다음을 제공합니다 사이의 유사성과 거리를 결정하는 여러 기능 문자열.
| 주의 |
|
현재, |
Soundex 시스템은 비슷한 소리를 매칭하는 방법입니다 동일한 코드로 변환하여 이름을 지정배트맨 토토. 처음에는 1880년, 1900년, 1910년에 미국 인구 조사에서 사용되었습니다. 참고 Soundex는 영어가 아닌 이름에는 별로 유용하지 않습니다.
그fuzzystrmatch모듈은 다음을 제공합니다. Soundex 코드 작업을 위한 두 가지 기능:
soundex(text)는 텍스트를 반환배트맨 토토. 차이(텍스트, 텍스트)는 int를 반환배트맨 토토.
그사운덱스함수 변환
Soundex 코드에 문자열을 추가배트맨 토토.차이함수는 두 문자열을 다음으로 변환합니다.
Soundex 코드를 확인한 다음 일치하는 수를 보고합니다.
코드 위치. Soundex 코드는 4개의 문자로 구성되어 있으므로
결과 범위는 0에서 4까지이며, 0은 일치하지 않는 것이며
4개는 정확히 일치합니다. (따라서 함수 이름이 잘못되었습니다 —유사성아마도
더 나은 이름.)
다음은 몇 가지 사용 예입니다:
SELECT soundex('안녕하세요!');
SELECT soundex('앤'), soundex('앤'), Difference('앤', '앤');
SELECT soundex('앤'), soundex('앤드류'), Difference('앤', '앤드류');
SELECT soundex('앤'), soundex('마가렛'), 차이('앤', '마가렛');
CREATE TABLE s(nm 텍스트);
INSERT INTO s VALUES('존');
INSERT INTO s VALUES('조앤');
INSERT INTO s VALUES ('흔들림');
INSERT INTO s VALUES('잭');
SELECT * FROM s WHERE soundex(nm) = soundex('john');
SELECT * FROM s WHERE 차이(s.nm, 'john') 2;
이 함수는 Levenshtein 거리를 계산배트맨 토토. 두 개의 문자열:
levenshtein(text source, text target, int ins_cost, int del_cost, int sub_cost)는 int를 반환배트맨 토토. levenshtein(텍스트 소스, 텍스트 대상)은 int를 반환배트맨 토토. levenshtein_less_equal(text source, text target, int ins_cost, int del_cost, int sub_cost, int max_d)는 int를 반환배트맨 토토. levenshtein_less_equal(text source, text target, int max_d)는 int를 반환배트맨 토토.
둘 다출처그리고대상null이 아닌 문자열일 수 있습니다. 최대 255바이트. 비용 매개변수는 문자 삽입, 삭제 또는 대체에 대한 비용 각각. 다음과 같이 비용 매개변수를 생략할 수 있습니다. 함수의 두 번째 버전; 그 경우에는 모두 기본값입니다 1.levenshtein_less_equal이다 낮은 값에 대한 levenshtein 함수의 가속 버전 거리. 실제 거리가 max_d보다 작거나 같은 경우, 다음은levenshtein_less_equal반환 그것의 정확한 가치. 그렇지 않으면 이 함수는 값을 반환배트맨 토토. 이는 max_d보다 큽니다.
예:
test=# SELECT levenshtein('GUMBO', 'GAMBOL');
레벤슈타인
-------------
2
(1줄)
test=# SELECT levenshtein('GUMBO', 'GAMBOL', 2,1,1);
레벤슈타인
-------------
3
(1줄)
test=# SELECT levenshtein_less_equal('extensive', 'exhaustive',2);
levenshtein_less_equal
-----------
3
(1줄)
test=# SELECT levenshtein_less_equal('확장', '완전',4);
levenshtein_less_equal
-----------
4
(1행)
Soundex와 마찬가지로 Metaphone은 입력 문자열에 대한 대표 코드를 구성배트맨 토토. 2개 문자열이 동일하면 유사한 것으로 간주됩니다. 코드.
이 함수는 입력의 메타폰 코드를 계산합니다 문자열:
metaphone(text source, int max_output_length)은 텍스트를 반환배트맨 토토.
출처널이 아닌 문자열이어야 배트맨 토토 최대 255자입니다.max_output_length최대 길이를 설정합니다. 출력 메타폰 코드; 더 길면 출력이 다음으로 잘립니다. 이 길이요.
예:
test=# SELECT 메타폰('GUMBO', 4);
메타폰
-----------
KM
(1행)
Double Metaphone 시스템은 2를 계산배트맨 토토."이것 같군요"주어진 입력 문자열에 대한 문자열 — 에"1차"그리고"대체". 대부분의 경우에는 동일합니다. 하지만 영어가 아닌 이름의 경우 특히 약간 다를 수 있습니다. 발음에 따라 다르다. 이 함수는 다음을 계산합니다. 기본 및 대체 코드:
dmetaphone(텍스트 소스)이 텍스트를 반환합니다. dmetaphone_alt(텍스트 소스)는 텍스트를 반환합니다.
입력 문자열에는 길이 제한이 없습니다.
예:
test=# dmetaphone('gumbo') 선택;
디메타폰
------------
KMP
(1행)