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

Performances des requêtes dans PostgreSQL en utilisant 'similar to'

Si vous ne recherchez que des listes de valeurs à un caractère, divisez chaque chaîne en un tableau de caractères et indexez le tableau :

CREATE INDEX
        ix_tablename_columnxlist
ON      tableName
USING   GIN((REGEXP_SPLIT_TO_ARRAY(columnX, '')))

puis recherchez dans l'index :

SELECT  *
FROM    tableName
WHERE   REGEXP_SPLIT_TO_ARRAY(columnX, '') && ARRAY['A', 'B', 'C', '1', '2', '3']