Foros del Web » Programación para mayores de 30 ;) » Bases de Datos General »

Ayuda con error en query de fechas

Estas en el tema de Ayuda con error en query de fechas en el foro de Bases de Datos General en Foros del Web. Esta consulta me falla, quiero sacar la diferencia de dias entre los registros de fecha de un mismo campo, que cosa me estara fallando?? ya ...
  #1 (permalink)  
Antiguo 03/03/2009, 14:20
 
Fecha de Ingreso: noviembre-2005
Ubicación: Torreon Coahuila
Mensajes: 100
Antigüedad: 18 años, 5 meses
Puntos: 1
Ayuda con error en query de fechas

Esta consulta me falla, quiero sacar la diferencia de dias entre los registros de fecha de un mismo campo, que cosa me estara fallando?? ya ven que desde afuera del ruedo se ven mejor las cosas y llevo un rato trabadillo.

Tengo las siguientes fechas y quisiera que me sacara la diferencia de dias asi

id -------------------------idproceso ----------------ctr_fecharealizacion--------------------
10--------------------------10--------------------------1 /10/ 2008 ---------------- = 0
15 -------------------------10--------------------------5/10/ 2008 ---------------- = 4
25--------------------------10--------------------------15/10/ 2008 ---------------- = 10
22--------------------------10--------------------------00/00/ 0000 ---------------- = 0 // Omite las vacias
34 -------------------------10-------------------------- 20/10/ 2008---------------- = 5
23-------------------------10-------------------------- 25/10/ 2008 ---------------- = 5
56-------------------------10-------------------------- 31/10/ 2008---------------- = 6

Código:
 SELECT DISTINCT
 f1.id, f1.idproceso, f1.ctr_fecharealizacion
 TO_DAYS(f2.ctr_fecharealizacion)-TO_DAYS(f1.ctr_fecharealizacion) AS diferencia_dias
 FROM  pro_c_trabajo f1
 LEFT JOIN  pro_c_trabajo f2 ON f1.id=f2.id AND f1.id < f2.id
 WHERE f1.idproceso='10'
 AND f1.ctr_fecharealizacion!='00/00/0000'
 ORDER BY f1.ctr_fecharealizacion,f1.id, f1.idproceso ASC
Me genera las fechas pero no el resultado en dias
Gracias que tengan bonito dia, saludos...
  #2 (permalink)  
Antiguo 05/03/2009, 15:07
Colaborador
 
Fecha de Ingreso: marzo-2008
Ubicación: Cáceres
Mensajes: 3.735
Antigüedad: 16 años, 1 mes
Puntos: 300
Respuesta: Ayuda con error en query de fechas

No sé por qué introduces la fecha así, pero tampoco sé qué gestor de base de datos usas.
Yo, usando MySQL, con las fechas en el formato 2009-01-28 y en un campo de tipo DATE,
he probado esta consulta con razonables resultados, aunque seguramente habría que perfeccionar algún detalle: salen días.

SELECT f1.id, f1.ctr_fecharealizacion, ifnull( TO_DAYS( f1.ctr_fecharealizacion ) - TO_DAYS( f2.ctr_fecharealizacion ) , 0 ) DIAS_DIFERENCIA
FROM pro_c_trabajo f1
LEFT JOIN pro_c_trabajo f2 ON f1.id > f2.id
AND (
f1.ctr_fecharealizacion != '0000-00-00'
AND f2.ctr_fecharealizacion != '0000-00-00'
)
WHERE f1.idproceso =10
GROUP BY f2.id
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 03:21.