Ver Mensaje Individual
  #1  
Antiguo 03-11-2005
Avatar de Cabanyaler
Cabanyaler Cabanyaler is offline
Miembro
 
Registrado: jun 2003
Ubicación: País Valencià
Posts: 339
Reputación: 21
Cabanyaler Va por buen camino
LEFT INNER JOIN & RIGHT INNER JOIN

Hola, veamos.
Tengo un problema que se me está agrandando por motivos del normalizado de la BBDD y de la gran cantidad de filtros o campos por los que puede y desea consultar el usuario.
Expongo de manera resumidísima:Quiero hacer una consulta sobre dos tablas donde cada una de ellas posee sus claves principales y la esclava con su clave ajena refrenciando a la principal. (hasta aquí todo normal).
Una de las consultas posibles es:

SELECT A.*
FROM A
LEFT OUTER JOIN B
ON B.CAjena = A.CPrincipal


ok!, esto debería devolver todas las tuplas que existen en A independientemente de valores, ya que no establezco clausula WHERE. Pero me retorna sólo todas las tuplas de A que tienen relación con alguna tupla de B.

Mi deseo es obtener todas las tuplas de A, tengan o no tengan tuplas relacionadas en B.

Obviamente he resumido la consulta, ya que para eso haría SELECT * FROM A, pero lo que deseo es poder consultar tablas relacionadas con el INNER JOIN y que me retorne todas las de la maestra que cumplan los filtros establecidos sobre las tuplas esclavas y ademas las tuplas de la maestra que NO TENGAN ninguna tupla relacionada en la esclava.

Espero haberlo expuesto de forma entendible.
Gracias por vuestra ayuda y un saludo.
__________________
El meu país és tan petit, que des de dalt d'un campanar es pot veure el campanar veí.
Responder Con Cita