Re: Optimizar JOINS en vista

From: "Jaime Casanova" <systemguards(at)gmail(dot)com>
To: Raúl Andrés Duque Murillo <ra_duque(at)yahoo(dot)com(dot)mx>
Cc: pgsql-es-ayuda(at)postgresql(dot)org
Subject: Re: Optimizar JOINS en vista
Date: 2008-06-02 19:03:58
Message-ID: c2d9e70e0806021203q5f4121v2359f0cbcacf126d@mail.gmail.com
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-es-ayuda

On 6/2/08, Raúl Andrés Duque Murillo <ra_duque(at)yahoo(dot)com(dot)mx> wrote:

> > > Creé una vista como alternativa "rápida" para la fuente de datos de una
> > > solución de BI. Básicamente es una serie de JOINs para traer
> descripciones
> > > de tablas auxiliares, pero analizando el explain me doy cuenta que sin
> > > importar si NO utilizo algunas descripciones en mi SELECT, sigue
> generando los JOINs con las tablas relacionados cuando realmente son
> "innecesarios" ya
> > > que existen FK y un JOIN NORMALITO (no left ni right) no va a alternar
> la
> > > cantidad de registros devueltos en caso de no encontrar registro
> > > relacionado.
> > >
> > Si la vista tiene JOIN's porque esperas que no ejecute los joins?
> >
> Espero que no los ejecute porque no los estoy utilizando en los objetos de
> resultado de la selección de la vista.
>

Un Join lo que hace es verificar si un valor en una tabla A
corresponde a un valor en otra tabla B, al no filtrar la tabla B lo
que hace es verificar por cada registro devuelto de A si existe un
correspondiente en B... si usaras un filtro en B lo que va a hacer es
verificar por cada registro en A si existe uno correspondiente en B y
que ademas cumpla con las condiciones expuestas para B...

en todo caso si ejecuta el JOIN es la unica forma de saber si el
regsitro esta o no en B

--
Atentamente,
Jaime Casanova
Soporte y capacitación de PostgreSQL
Guayaquil - Ecuador
Cel. (593) 087171157

In response to

Browse pgsql-es-ayuda by date

  From Date Subject
Next Message Carlos Pineda 2008-06-02 20:30:42 Re: caracteres
Previous Message Mauro A. Morales M. 2008-06-02 18:50:48 Re: OT - PHP Postgresql