PDA

Ver la Versión Completa : Consulta diferencia media entre dos horas


Sayuri
11-08-2005, 14:19:21
Buenas compañeros,
uso tablas paradox. Quiero poder lanzar una consulta en la cual pueda sacar la diferencia media entre dos campos que tiene un valor en hh:mm:ss (vamos un Time). Me gustaría que diera el resultado de la resta en minutos y la media tambien

¿Es mucho pedir?

¿Cómo lo hago?

ContraVeneno
11-08-2005, 20:34:48
¿que pasa si restas los dos campos?
¿Te regresa un float?
¿y si ese float lo conviertes a minutos?

te pregunto porque una vez hice algo que era restar dos fechas de una tabla, luego ese resultado (un float, suponiendo 23.45, el 23 eran los días y el .45 era las horas) lo convertía en años, meses, horas, minutos, segundos.

ring any bells? :D

saludos.

Sayuri
12-08-2005, 09:39:42
es que el resultado que me devuelve al restar los dos campos que estan con formato hh:mm:ss no son horas ni minutos ni segundos ni nada, porque al hacer la conversión por mi cuenta y restar los datos no me da ni parecido

Lepe
12-08-2005, 12:48:33
Se me ocurre que una hora determinada va ligada a una fecha concreta, si no dispones de fecha, En teoría debería coger la misma fecha para ambas horas, es decir, la fecha base del calendario. Si tenemos 23:00:00 y 01:00:00, obviamente no dará 2 horas de diferencia, sino que dará 22 horas !!

Habría que tener en cuenta la fecha :

01/01/2005 23:00:00 con
02/01/2005 01:00:00

Si dará 2 horas de diferencia.

Un saludo.

Sayuri
12-08-2005, 13:21:24
el problema es que tengo la fecha en otro campo, es decir tengo la fecha de una de las horas y la fecha(que normalmente es la misma que la anterior) de otra de las horas.

Lepe
12-08-2005, 14:09:49
Une el campo de fecha con el de la hora correspondiente.

Cuando necesites mostrarlo en pantalla los dos campos, pones el campo 2 veces, uno con DateFormat dd/mm/yyyy y el otro con hh:nn:ss, Al tiempo de guardar tendrás que usar RecodeDate y RecodeTime (por ejemplo), para guardar lo que se modifique.

Un saludo

Sayuri
12-08-2005, 18:03:51
es que el cliente me lo ha pedido que esten separados, no me digas ni porqué si ni porqué no, pero así es...

ContraVeneno
12-08-2005, 19:29:44
la idea que capte es:
grábarlo en la base de datos como DateTime y mostrale al cliente solo el tiempo
La función FormatDateTime se utiliza cuando solo quieres mostrar una parte de la fecha.

De esta manera ya podrías restar las dos fechas y ahora si podrías obtener el número de horas que realmente son.