Calcular la diferencia entre dos fechas en MySQL es realmente fácil. Así es como puedes hacerlo. Digamos dt1 y dt2 hay 2 columnas en la tabla table_name . Simplemente reemplace db1, db2 y table_name en las consultas a continuación con sus valores.
Un caso de uso simple es una tabla llamada usuario con 2 campos llamados signup_date y last_login_date. Puede calcular la diferencia entre dos fechas para encontrar la última vez que los usuarios iniciaron sesión después de registrarse.
Diferencia entre dos fechas presentes como columnas en una tabla
SELECT UNIX_TIMESTAMP( dt2 ) - UNIX_TIMESTAMP( dt1 ) from table_name;
Diferencia entre dos fechas almacenadas como variables
SET @dt1='2013-11-09 00:00:00'; SET @dt2='2012-10-07 00:00:00'; SELECT UNIX_TIMESTAMP( @dt2 ) - UNIX_TIMESTAMP( @dt1 );
Diferencia entre dos fechas en minutos
Si desea averiguar la diferencia en términos de minutos, simplemente divida el resultado anterior por 60
SELECT (UNIX_TIMESTAMP( dt2 ) - UNIX_TIMESTAMP( dt1 ))/60 from table_name;
Diferencia entre dos fechas en horas
Si desea averiguar la diferencia en términos de minutos, simplemente divida el resultado anterior por 3600
SELECT (UNIX_TIMESTAMP( dt2 ) - UNIX_TIMESTAMP( dt1 ))/3600 from table_name;
Diferencia entre dos fechas en días
Si desea averiguar la diferencia en términos de minutos, simplemente divida el resultado anterior por 3600 * 24