Ver Mensaje Individual
  #2 (permalink)  
Antiguo 13/05/2013, 08:02
Avatar de Libras
Libras
Colaborador
 
Fecha de Ingreso: agosto-2006
Ubicación: En la hermosa perla de occidente
Mensajes: 7.412
Antigüedad: 17 años, 9 meses
Puntos: 774
Respuesta: consulta complicada SQL

usa un left join :)
Código SQL:
Ver original
  1. DECLARE @persona TABLE (idPersona INT IDENTITY (1,1), nombre VARCHAR (50))
  2. INSERT INTO @persona (nombre) VALUES ('juan')
  3. INSERT INTO @persona (nombre) VALUES ('pedro')
  4. INSERT INTO @persona (nombre) VALUES ('maria')
  5.  
  6. DECLARE @direccion TABLE (idPersona INT, ubicacion VARCHAR (30))
  7. INSERT INTO @direccion (idPersona, ubicacion) VALUES (1, 'mexico')
  8. INSERT INTO @direccion (idPersona, ubicacion) VALUES (1, 'puebla')
  9. INSERT INTO @direccion (idPersona, ubicacion) VALUES (2, 'peñasco')
  10.  
  11. SELECT t1.idPersona,t1.nombre,
  12. CASE WHEN t2.idPersona IS NULL THEN '--' ELSE t2.ubicacion END AS ubicacion FROM @persona AS t1
  13. LEFT JOIN @direccion AS t2 ON (t1.idPersona=t2.idPersona)
__________________
What does an execution plan say to t-sql query? Go f**k yourself, if you are not happy with me