PostgreSQL
 sql >> база данни >  >> RDS >> PostgreSQL

Защо функцията word_similarity на триграмата на postgres не използва gin индекс?

Според този отговор във форума на postgres

И така, заявката може да бъде актуализирана, за да използва индекса, както следва:

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

Предупреждение :операторът използва само индекса само с една версия на комутаторната двойка. Т.е. той използва само индекса в случай <<-> а не случай <->> . Тази публикация за препълване на стека изглежда, че дава разумно обяснение защо:




  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. psql невалидна команда \N докато възстановяване на sql

  2. Проверете дали Postgresql слуша

  3. Postgresql:dblink в съхранените функции

  4. Rails:разрешението е отказано за relation schema_migrations

  5. ГРЕШКА:разрешението е отказано за име на таблица за връзка в Postgres, докато се опитва SELECT като потребител само за четене