pg_trgm
PostgreSQL 🟡 MidDefinition
Extension qui fournit la recherche par similarite basee sur les trigrammes. Permet la recherche floue (fuzzy matching) et le LIKE/ILIKE rapide grace aux index GIN ou GiST.
Analogie
Un correcteur orthographique integre a ta base de donnees : il trouve 'PostgreSQL' meme si tu tapes 'Postgre'.
Exemple de code
CREATE EXTENSION pg_trgm;
CREATE INDEX idx_trgm ON users
USING gin (name gin_trgm_ops);
SELECT * FROM users
WHERE name % 'Alic'
ORDER BY similarity(name, 'Alic') DESC;
Cas d'usage
Implementer une barre de recherche tolerante aux fautes de frappe sans Elasticsearch.