Re: cómo puedo obligar uso de índices

From: "ernesto contreras" <eeljuri(at)gmail(dot)com>
To: "Jaime Casanova" <systemguards(at)gmail(dot)com>
Cc: "Lista PostgreSql" <pgsql-es-ayuda(at)postgresql(dot)org>
Subject: Re: cómo puedo obligar uso de índices
Date: 2006-12-08 17:10:01
Message-ID: 79f90aff0612080910y3ec42315w7c5791ddb777aa47@mail.gmail.com
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-es-ayuda

Si, se le han ejecutado los Analyze's y Vacuum's respectivos, y las tres
tablas se requieren, lo que pasa es que eliminé para presentárlo aquí,
algunos campos.

Los analistas que tengo acá, se percataron que eliminando el "merge join", set
enable_mergejoin = off; entonces sí usa los índices, el optimizador
usa nesteed
loop, así el query responde como se espera.

Por qué se debe hacer así, por qué el optimizador no toma el camino que
dicta la lógica, entendiendo que siempre busca el mejor camino. ???

Gracias.

---------- Forwarded message ----------
From: Jaime Casanova <systemguards(at)gmail(dot)com>
Date: Dec 8, 2006 1:44 AM
Subject: Re: [pgsql-es-ayuda] cómo puedo obligar uso de índices
To: ernesto contreras <eeljuri(at)gmail(dot)com>
Cc: Lista PostgreSql < pgsql-es-ayuda(at)postgresql(dot)org>

On 12/7/06, ernesto contreras <eeljuri(at)gmail(dot)com> wrote:
> Claro vale
>
> explain analyze SELECT pol.idepol , re.mtolocal as prima_devengada
> FROM poliza as pol, recibo as re
> WHERE pol.idepol IN (SELECT idepol
> FROM part_inter_pol
> WHERE codinter='001225'
> AND indlider='S')
> AND re.idepol = pol.idepol;
>

Imagino que has ejecutado VACUUM ANALYZE o al menos ANALYZE?

aunque el query tal como lo pones no necesita de las 3 tablas:

explain analyze
SELECT re.idepol, re.mtolocal as prima_devengada
FROM recibo as re
WHERE re.idepol IN (SELECT idepol FROM part_inter_pol
WHERE codinter='001225'
AND indlider='S');

--
Atentamente,
Jaime Casanova

"Programming today is a race between software engineers striving to
build bigger and better idiot-proof programs and the universe trying
to produce bigger and better idiots.
So far, the universe is winning."
Richard Cook

In response to

Responses

Browse pgsql-es-ayuda by date

  From Date Subject
Next Message Oscar Cano 2006-12-08 21:22:18 Re: pl/java
Previous Message Fernando DÍaz 2006-12-08 16:54:39 Problema con pg_restore