Variaciones en el rendimiento de la consulta de PostgreSQL LIKE
He estado viendo una gran variación en los tiempos de respuesta con respecto aLIKE
consultas a una tabla particular en mi base de datos. A veces obtendré resultados dentro de los 200 a 400 ms (muy aceptable), pero otras veces podría llevar hasta 30 segundos devolver los resultados.
Entiendo queLIKE
las consultas son muy intensivas en recursos, pero no entiendo por qué habría una diferencia tan grande en los tiempos de respuesta. He construido un índice btree en elowner1
campo pero no creo que ayude conLIKE
consultas ¿Alguien tiene alguna idea?
Ejemplo de SQL:
SELECT gid, owner1 FORM parcels
WHERE owner1 ILIKE '%someones name%' LIMIT 10
También he intentado:
SELECT gid, owner1 FROM parcels
WHERE lower(owner1) LIKE lower('%someones name%') LIMIT 10
Y:
SELECT gid, owner1 FROM parcels
WHERE lower(owner1) LIKE lower('someones name%') LIMIT 10
Con resultados similares.
Cuenta de la fila de la tabla: aproximadamente 95,000.