sql >> Database teknologi >  >> RDS >> PostgreSQL

Sådan bruger du mange LIKE-operatorer og bruger indeks

Du kan oprette et trigramindeks, der understøtter din forespørgsel.

Til det har du brug for pg_trgm udvidelse; kør følgende som superbruger:

CREATE EXTENSION pg_trgm;

Så kan du oprette et GIN-indeks:

CREATE INDEX ON dir USING gin (path gin_trgm_ops);

Dette indeks kan bruges med din anden og tredje tilgang, så det burde gøre tricket for dig.

Med korte mønstre som det i dine eksempler, vil indekset ikke være særlig effektivt.

Du kan også bruge et GiST-indeks, som sandsynligvis vil være mindre, men langsommere at søge.

Bemærk, at du også kan bruge det indeks med mønstre, der starter med % .




  1. SQL:Få oprettet registreringer i tidsinterval for bestemte datoer

  2. Hvad er forskellen mellem ORA-12571:TNS-pakkeskriverfejl og ORA-03135:forbindelse mistet kontakt?

  3. Brug af LIKE i en Oracle IN-klausul

  4. Xampp:webbrowser vil ikke vise localhost-siden