PostgreSQL
 sql >> Datenbank >  >> RDS >> PostgreSQL

Warum verwendet die Funktion word_similarity des Postgres-Trigramms keinen Gin-Index?

Laut dieser Antwort im Postgres-Forum

Die Abfrage kann also aktualisiert werden, um den Index wie folgt zu verwenden:

SET pg_trgm.word_similarity_threshold TO 0.1;
SELECT * 
FROM place 
WHERE place.name <<-> '__SOME_STRING__';

Warnung :Der Operator verwendet den Index nur mit nur einer Version des Kommutatorpaars. D.h. es wurde nur der Index im Fall <<-> verwendet und nicht der Fall <->> . Dieser Stack-Overflow-Q/A-Post sieht so aus, als ob es eine vernünftige Erklärung dafür gibt, warum: