Hola eduardo160:
la función DATEDIFF te regresa la diferencia en días entre dos fechas, pero sin tomar en cuenta las horas. si quieres obtener la diferencia en horas, minutos y segundos seberás utilizar TIMEDIFF(), te pongo un ejemplo de las dos funciones para que observes las diferencias:
Código MySQL:
Ver original+--------------------------------------------------------+
| datediff('2011-04-28 00:00:00', '2011-04-27 23:59:59') | +--------------------------------------------------------+
| 1 |
+--------------------------------------------------------+
mysql
> select timediff
('2011-04-28 00:00:00', '2011-04-27 23:59:59');+--------------------------------------------------------+
| timediff('2011-04-28 00:00:00', '2011-04-27 23:59:59') |
+--------------------------------------------------------+
| 00:00:01 |
+--------------------------------------------------------+
Si observas en las dos funciones estoy enviando las mismas fechas, pero DATEDIFF me regresa un 1, independientemente que la diferencia entre ambas fechas sea de apenas 1 segundo. La función TIME por su parte me regresa justamente una diferencia de 1 segundo entre las fechas. Espero que te pueda servir la ayuda.
Saludos
leo.