sql >> Databáze >  >> RDS >> PostgreSQL

Fulltextové vyhledávání Postgres:jak hledat více slov ve více polích?

Vypadá to, že ve skutečnosti chcete hledat zřetězení všech těchto polí.

Mohli byste vytvořit dotaz přesně takto

... where to_tsvector('italian', name||' '||coalesce(decription,'')...) @@ to_tsquery('$word')

a vytvořte index na přesně stejném výpočtu:

create index your_index on shop
using GIN(to_tsvector('italian',name||' '||coalesce(decription,'')...))

Nezapomeňte použít coalesce na sloupcích přijímajících hodnoty NULL.




  1. mysql_real_escape_string přestal fungovat, když jsem přesunul svůj kód na jiný server

  2. Správná syntaxe připravených příkazů

  3. mysql_upgrade se nezdařilo - tabulky innodb neexistují?

  4. Logstash:Nelze se připojit k externí databázi Amazon RDS