sql >> Databáze >  >> RDS >> PostgreSQL

Zkratky pro fulltextové vyhledávání PostgreSQL

@pozs má pravdu. Musíte použít slovník synonym .

1 - V adresáři $SHAREDIR/tsearch_data vytvořte soubor german.syn s následujícím obsahem:

Bez Bezirk

2 - Proveďte dotaz:

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;

Nyní to můžete otestovat. Provést dotazy:

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)

Další odkazy:

  1. PostgreSQL:Fulltextový vyhledávač (vypršela platnost)


  1. Spuštění serveru postgres SQL 9.6 na Amazon Linux vrátí nerozpoznanou službu

  2. Vysoká dostupnost při nízkém rozpočtu – nasazení minimálního klastru MySQL Galera se dvěma uzly

  3. Jak mohu automaticky převést MySQL DDL na Oracle DDL?

  4. Ukládání mikrosekund v MySQL:jaké řešení?