Re: lpad vs ||

From: Alvaro Herrera <alvherre(at)commandprompt(dot)com>
To: Andrés P(dot)P(dot) <solopostgres(at)gmail(dot)com>
Cc: pgsql-es-ayuda <pgsql-es-ayuda(at)postgresql(dot)org>
Subject: Re: lpad vs ||
Date: 2010-09-03 20:59:34
Message-ID: 1283547449-sup-241@alvh.no-ip.org
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-es-ayuda

Excerpts from Andrés P.P.'s message of vie sep 03 16:54:18 -0400 2010:

> Encuentro buen tiempo pero por curiosidad cognitiva me gustaría
> entender la diferencia en esta proporción... talvez el hecho de escribir en
> la tabla, escribir en el índice y al mismo tiempo usar el índice??..

Modificar el índice es muy costoso. Mientras se va ejecutando el
update, el índice va creciendo, con lo cual actualizar los últimos
registros es más costoso que actualizar los primeros.

> Finalmente, la solución que me indicas de eliminar el único índice que hay
> significaría eliminar la PK.. y el campo de esta PK es justamente el que se
> modifica y que también se usa en el where....... Viendo lo anterior... es
> más óptimo hacer el update sobre la tabla sin el índice .... que
> hacerlo con la "ayuda" que proporciona la presencia del mismo índice en el
> where??...

¿Quién dice que el índice se está ocupando en este caso? Dado que la
condición del where es length(), yo creo que el update está haciendo un
seqscan sobre la tabla. El índice no ayuda en nada, sólo entorpece la
tarea.

--
Álvaro Herrera <alvherre(at)commandprompt(dot)com>
The PostgreSQL Company - Command Prompt, Inc.
PostgreSQL Replication, Consulting, Custom Development, 24x7 support

In response to

Responses

Browse pgsql-es-ayuda by date

  From Date Subject
Next Message Alvaro Herrera 2010-09-03 21:01:53 Re: estadistica de uso del cache
Previous Message Andrés P.P. 2010-09-03 20:54:18 Re: lpad vs ||