PostgreSQL
 sql >> Base de Dados >  >> RDS >> PostgreSQL

Abreviaturas de pesquisa de texto completo do PostgreSQL


@pozs está certo. Você precisa usar um dicionário de sinônimos .

1 - No diretório $SHAREDIR/tsearch_data crie o arquivo german.syn com o seguinte conteúdo:
Bez Bezirk

2 - Execute a consulta:
CREATE TEXT SEARCH DICTIONARY german_syn (
    template = synonym,
    synonyms = german);
CREATE TEXT SEARCH CONFIGURATION german_syn(COPY='simple');
ALTER TEXT SEARCH CONFIGURATION german_syn
    ALTER MAPPING FOR asciiword, asciihword, hword_asciipart,
        word, hword, hword_part
    WITH german_syn, german_stem;

Agora você pode testá-lo. Executar consultas:
test=# SELECT to_tsvector('german_syn', 'Bezirk') @@ to_tsquery('german_syn', 'Bezirk & Bez');
 ?column? 
----------
 t
(1 row)

test=# SELECT to_tsvector('german_syn', 'Bez Bez.') @@ to_tsquery('german_syn', 'Bezirk');
 ?column? 
----------
 t
(1 row)

Links adicionais:
  1. PostgreSQL:um mecanismo de pesquisa de texto completo (expirado)