PostgreSQL
 sql >> Base de données >  >> RDS >> PostgreSQL

supprimer les mots vides sans radical dans postgresql

Créez votre propre dictionnaire et configuration de recherche de texte :

CREATE TEXT SEARCH DICTIONARY simple_english
   (TEMPLATE = pg_catalog.simple, STOPWORDS = english);

CREATE TEXT SEARCH CONFIGURATION simple_english
   (copy = english);
ALTER TEXT SEARCH CONFIGURATION simple_english
   ALTER MAPPING FOR asciihword, asciiword, hword, hword_asciipart, hword_part, word
   WITH simple_english;

Cela fonctionne comme ceci :

SELECT to_tsvector('simple_english', 'many an ox eats the houses');
┌─────────────────────────────────────┐
│             to_tsvector             │
├─────────────────────────────────────┤
│ 'eats':4 'houses':5 'many':1 'ox':3 │
└─────────────────────────────────────┘
(1 row)

Vous pouvez définir le paramètre default_text_search_config en simple_english pour en faire votre configuration de recherche de texte par défaut.