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

Jak používat mnoho operátorů LIKE a používat index

Můžete vytvořit index trigramu, který bude podporovat váš dotaz.

K tomu potřebujete pg_trgm rozšíření; spusťte následující jako superuživatel:

CREATE EXTENSION pg_trgm;

Poté můžete vytvořit index GIN:

CREATE INDEX ON dir USING gin (path gin_trgm_ops);

Tento index lze použít s vaším druhým a třetím přístupem, takže by měl stačit za vás.

S krátkými vzory, jako je ten ve vašich příkladech, nebude index příliš účinný.

Můžete také použít index GiST, který bude pravděpodobně menší, ale bude se hledat pomaleji.

Všimněte si, že tento index můžete použít také se vzory, které začínají % .




  1. Výsledek dotazu MySql všechny hodiny dne

  2. mysql vložte výsledek víceřádkového dotazu do tabulky

  3. MySQL Insert if Podmínka

  4. Jak mohu hashovat hesla v postgresql?