Diferencia entre dos fechas en MySQL

Resuelto GeoGo asked hace 14 años • 14 respuestas

¿Cómo calcular la diferencia entre dos fechas, en el formato YYYY-MM-DD hh: mm: ssy obtener el resultado en segundos o milisegundos?

GeoGo avatar Jan 21 '11 20:01 GeoGo
Aceptado
SELECT TIMEDIFF('2007-12-31 10:02:00','2007-12-30 12:01:01');
-- result: 22:00:59, the difference in HH:MM:SS format


SELECT TIMESTAMPDIFF(SECOND,'2007-12-30 12:01:01','2007-12-31 10:02:00'); 
-- result: 79259  the difference in seconds

Entonces, puedes usarlo TIMESTAMPDIFFpara tu propósito.

Devid G avatar Jan 21 '2011 15:01 Devid G

Si está trabajando con columnas DATE (o puede convertirlas como columnas de fecha), intente DATEDIFF() y luego multiplique por 24 horas, 60 min, 60 segundos (ya que DATEDIFF devuelve la diferencia en días). De MySQL:

http://dev.mysql.com/doc/refman/5.5/en/date-and-time-functions.html

Por ejemplo:

mysql> SELECT DATEDIFF('2007-12-31 23:59:59','2007-12-30 00:00:00') * 24*60*60
kvista avatar Jan 21 '2011 13:01 kvista

Obtenga la diferencia de fechas en días usando DATEDIFF

SELECT DATEDIFF('2010-10-08 18:23:13', '2010-09-21 21:40:36') AS days;
+------+
| days |
+------+
|   17 |
+------+

O

Consulte el siguiente enlace ¿Diferencia de MySql entre dos marcas de tiempo en días?

Kailas avatar Dec 06 '2013 08:12 Kailas