Det er virkelig nemt at beregne forskel mellem to datoer i MySQL. Sådan kan du gøre det. Lad os sige dt1 og dt2 er 2 kolonner i tabel tabelnavn . Du skal blot erstatte db1, db2 og tabelnavn i forespørgslerne nedenfor med dine værdier.
Et simpelt use case er en tabel kaldet bruger med 2 felter kaldet signup_date og last_login_date. Du kan beregne forskellen mellem to datoer for at finde ud af, hvor nyligt brugere har logget ind efter tilmelding.
Forskel mellem to datoer, der findes som kolonner i en tabel
SELECT UNIX_TIMESTAMP( dt2 ) - UNIX_TIMESTAMP( dt1 ) from table_name;
Forskel mellem to datoer gemt som variable
SET @dt1='2013-11-09 00:00:00'; SET @dt2='2012-10-07 00:00:00'; SELECT UNIX_TIMESTAMP( @dt2 ) - UNIX_TIMESTAMP( @dt1 );
Forskellen mellem to datoer i minutter
Hvis du vil finde ud af forskellen i termer på minutter, dividerer du blot ovenstående resultat med 60
SELECT (UNIX_TIMESTAMP( dt2 ) - UNIX_TIMESTAMP( dt1 ))/60 from table_name;
Forskellen mellem to datoer i timer
Hvis du vil finde ud af forskellen i termer på minutter, dividerer du blot ovenstående resultat med 3600
SELECT (UNIX_TIMESTAMP( dt2 ) - UNIX_TIMESTAMP( dt1 ))/3600 from table_name;
Forskel mellem to datoer i dage
Hvis du vil finde ud af forskellen i termer på minutter, dividerer du blot ovenstående resultat med 3600*24