[Pgsql-ayuda] Join con campos null

=?iso-8859-1?q?Estrella=20Dominguez?= papanatas_00@yahoo.com
Thu, 20 Dec 2001 17:00:45 -0600 (CST)


Ok suena interesante...
Gracias



 --- David Martinez <davma@planet.com.mx> escribió: >
Estrella Dominguez wrote:
> 
> >Saludos ...
> >Tengo un problema con un query, el cual realiza un
> >join de dos tablas, como las sig:
> >La Tabla A consta de dos campos
> >cve_a  not null
> >Nombre not null
> >la llave de esta tabla es el campo cve_a
> >
> >La Tabla B consta de dos campos
> >cve_b not null
> >cve_a
> >Descripcion not null
> >la llave de esta tabla es el campo cve_b
> >
> >quiero hacer un select de la siguiente froma:
> >SELECT nombre,Descripcion
> >FROM   A,B
> >WHERE  A.cve_a = B.cve_a;
> >
> >Donde el campo B.cve_a (de la tabla B), puede
> contener
> >valores NUll. Cuando ejecuto el select me trae solo
> >los 
> >registros que cumplen la condicion: A.cve_a =
> B.cve_a,
> >pero no me trae los registros de la tabla B que
> tienen
> >el campo cve_a = NULL
> >
> >En oracle se que se puede hacer de la siguiente
> forma:
> >SELECT nombre,Descripcion
> >FROM   A,B
> >WHERE  A.cve_a = B.cve_a (+);
> >
> >
> >Pgsql-ayuda mailing list
> >Pgsql-ayuda@tlali.iztacala.unam.mx
>
>http://tlali.iztacala.unam.mx/mailman/listinfo/pgsql-ayuda
> >
> 
> Necesitas aplicar un LEFT JOIN:
> 
> select nombre, descripcion
> from a left join b on a.cve_a = b.cve_a
> 
> Con eso te trae todo el conjunto a y su interseccion
> con el conjunto b.
> 
> OJO: Esta caracteristica esta en postgres 7.1.3 y
> corresponde a SQL92.
>  

=====
Si lo que quieres es vivir cien años, no vivas como vivo yo.





_________________________________________________________
Do You Yahoo!?
¿Quieres armar tu própia página Web pero no sabes HTML?
Usa los asistentes de edición de Yahoo! Geocities
y tendrás un sitio en sólo unos minutos.
Visítanos en http://espanol.geocities.yahoo.com