From: | "Mario Gonzalez" <gonzalemario(at)gmail(dot)com> |
---|---|
To: | "SERGIO CRESPO" <screspo(at)rollerstar(dot)com> |
Cc: | pgsql-es-ayuda(at)postgresql(dot)org |
Subject: | Re: REDUCIR COSTE DEL QUERY |
Date: | 2007-07-25 12:14:01 |
Message-ID: | 2065a6cf0707250514h3683e145r95d8b57b09624fd4@mail.gmail.com |
Views: | Raw Message | Whole Thread | Download mbox | Resend email |
Thread: | |
Lists: | pgsql-es-ayuda |
On 25/07/07, SERGIO CRESPO <screspo(at)rollerstar(dot)com> wrote:
> QUERY PLAN
>
> ---------------------------------------------------------------------------------------
> GroupAggregate (cost=216920.22..216920.24 rows=1 width=20)
> -> Sort (cost=216920.22..216920.23 rows=1 width=20)
> Sort Key: mes
> -> Seq Scan on plan_mes (cost=0.00..216920.21 rows=1 width=20)
> Filter: ((empresa = '120071'::bpchar) AND (codigo ~~
> '4305037%'::text))
> (5 filas)
>
Creo que tienes algunos errores de concepto porque segun parece,
estas creando indices multicolumna y no lo estas ocupando. Lo que
necesita tu consulta es que el indice este sobre el campo empresa y
ademas, se ha recomendado muchas veces aqui que:
Los campos que se utilicen para hacer busquedas claves (como
empresa) es mejor que sean de **tipo entero** y crear un indice sobre
el; lo mismo para tu campo codigo. Es por eso que estas obligando a
PostgreSQL a hacer una busqueda sequencial sobre esos campos.
Tambien seria bueno que despues de hacer esos cambios pudieras
cambiarte a v8.2.x
>
From | Date | Subject | |
---|---|---|---|
Next Message | Mario Gonzalez | 2007-07-25 12:19:37 | Re: PostGreSQL Version 8.2.4 |
Previous Message | Felipe Fernandez | 2007-07-25 11:08:48 | Re: explain analyze |