Re: consulta con join

From: Gerardo Herzig <gherzig(at)fmed(dot)uba(dot)ar>
To: Alessandra Campos Alfaro <alesscalf(at)gmail(dot)com>
Cc: Lista Postgres ES <pgsql-es-ayuda(at)postgresql(dot)org>
Subject: Re: consulta con join
Date: 2015-08-27 22:00:55
Message-ID: 1065894668.290351.1440712855562.JavaMail.root@fmed.uba.ar
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-es-ayuda

>
>
> Buenas Tardes Lista
>
> tengo una consulta que une dos tablas con un Join. Asi
>
> Select * from tabla_1
> left join tabla_2 on tabla_2.id_tabla2=tabla1.id_tabla_2
> where tabla_1.id_tabla_2 is not null
>
> Pero cuando hago esta la consulta, demora mas que cuando la hago de
> esta forma:
>
>
>
> Select * from tabla_1
> left join tabla_2 on tabla_2.id_tabla2=tabla1.id_tabla_2
> where tabla_2.id_tabla_2 is not null
>
>
> Alguien pudiera ayudarme a entender cual es la diferencia y como
> opera el join que pueda hacer que tarde mas una consulta que la
> otra? pues me temo que tengo varias consultas mas formuladas en este
> aspecto.
>
>
>
> Aless
>

La manera mas simple que se me ocurre, es que en tabla_2 haya mas registros que en tabla_1.

La aproximacion a este tipo de problemas suele comenzar con el analisis del plan de ejecucion.

La sentencia EXPLAIN [1] hace eso. Hace un EXPLAIN ANALYZE de ambos selects, y a partir de ahi hay que estudiar un poco las diferencias a nivel de plan.
[1] http://www.postgresql.org/docs/current/static/sql-explain.html

HTH
Gerardo

-
Enviado a la lista de correo pgsql-es-ayuda (pgsql-es-ayuda(at)postgresql(dot)org)
Para cambiar tu suscripcin:
http://www.postgresql.org/mailpref/pgsql-es-ayuda

In response to

Browse pgsql-es-ayuda by date

  From Date Subject
Next Message Alvaro Herrera 2015-08-28 00:13:20 Re: consulta con join
Previous Message Alessandra Campos Alfaro 2015-08-27 21:44:41 consulta con join