Ver Mensaje Individual
  #8  
Antiguo 18-04-2013
cloayza cloayza is offline
Miembro
 
Registrado: may 2003
Ubicación: San Pedro de la Paz, Chile
Posts: 922
Reputación: 23
cloayza Tiene un aura espectacularcloayza Tiene un aura espectacular
Amigo la solución que te dieron me dejo pensando y creo que lo mejor sería:

Alternativa 1:

Código SQL [-]
SELECT 
  CAMPO1, CAMPO2, CAMPO3, CAMPO4,
  MAX(CASE WHEN TIPO = 'INGRESO' THEN FECHA ELSE NULL END) AS INGRESO,
  MAX(CASE WHEN TIPO = 'SALIDA' THEN FECHA ELSE NULL END) AS SALIDA
FROM DEMO
GROUP BY 
  CAMPO1, CAMPO2, CAMPO3, CAMPO4
Resultado Alternativa 1:
Cita:
CAMPO1 CAMPO2 CAMPO3 CAMPO4 INGRESO SALIDA
1111 17/04/2013 222 NOMBRE 18/04/2013 NULL
1111 18/04/2013 222 NOMBRE NULL 19/04/2013
Alternativa 2:
Código SQL [-]
SELECT
    TABLA.CAMPO1,
    TABLA.CAMPO2,
    TABLA.CAMPO3,
    TABLA.CAMPO4,
    TABLA.TIPO,
    TABLA.FECHA,
    TABLA2.TIPO,
    TABLA2.FECHA
FROM TABLA
     LEFT OUTER JOIN TABLA TABLA2 ON
                    (TABLA2.CAMPO1 = TABLA.CAMPO1) AND
                    (TABLA2.TIPO = 'SALIDA')
WHERE (TABLA.TIPO = 'INGRESO')
Resultado Alternativa 2:
Cita:
CAMPO1 CAMPO2 CAMPO3 CAMPO4 TIPO FECHA TIPO1 FECHA1
1111 17/04/2013 222 NOMBRE INGRESO 18/04/2013 SALIDA 19/04/2013
Es solo otra opinión...
Saludos cordiales
Responder Con Cita