sql >> Databasteknik >  >> RDS >> PostgreSQL

Hur man använder många LIKE-operatorer och använder index

Du kan skapa ett trigramindex som stöder din fråga.

För det behöver du pg_trgm förlängning; kör följande som superanvändare:

CREATE EXTENSION pg_trgm;

Sedan kan du skapa ett GIN-index:

CREATE INDEX ON dir USING gin (path gin_trgm_ops);

Detta index kan användas med ditt andra och tredje tillvägagångssätt, så det borde göra susen för dig.

Med korta mönster som det i dina exempel kommer indexet inte att vara särskilt effektivt.

Du kan också använda ett GiST-index, som förmodligen kommer att vara mindre, men långsammare att söka.

Observera att du kan använda det indexet även med mönster som börjar med % .




  1. Hur hittar jag städerna med störst befolkning med hjälp av SSIS?

  2. Skillnad i SQL Mellan operator och>=&<=operator

  3. Få data från mysql-databasen med php och jquery ajax

  4. Hur man stoppar/startar databasens e-postkö i SQL Server (T-SQL)