Ver Mensaje Individual
  #2  
Antiguo 31-01-2005
lucianojdg lucianojdg is offline
Miembro
 
Registrado: dic 2003
Posts: 42
Reputación: 0
lucianojdg Va por buen camino
Smile Consulta SQL con LEFT JOIN

SELECT M.CdMedias, P.NombrePersona, S.NombreSector
FROM Medias M
LEFT JOIN Personas P ON P.CdPersona = M.CdPersona
LEFT JOIN Sector S ON S.CdSector = M.CdSector
ORDER BY M.CdMedias

Esta consulta te va a traer todos los registros de medias y los nombres de personas y sectores que tienen asociados, en caso de que la tabla medias tenga algun codigo de persona o sector nulo e campo P.NombrePersona o S.NombreSector va a ser nulo tambien

Si quisieras agragar restricciones relacionadas con las tablas secundarias (en donde haces los Left Joins) seria de la siguiente manera:

...
LEFT JOIN Personas P ON P.CdPersona = M.CdPersona
and P.Edad > 20
...

Si quisieras agregar restricciones relacionadas a la tabla Medias seria de la sigueite manera:

SELECT M.CdMedias, P.NombrePersona, S.NombreSector
FROM Medias M
LEFT JOIN Personas P ON P.CdPersona = M.CdPersona
LEFT JOIN Sector S ON S.CdSector = M.CdSector
Where M.CdUnidadMedida = 2
and ...
ORDER BY M.CdMedias


En caso de que necesites hacer un Join en donde no se permitan los nulos tenes que usar INNER JOIN en vez de LEFT JOIN.


Espero que te sirva

Saludos


Luciano
Responder Con Cita