Obliczenie różnicy między dwiema datami w MySQL jest naprawdę łatwe. Oto jak możesz to zrobić. Powiedzmy dt1 i dt2 są 2 kolumny w tabeli nazwa_tabeli . Po prostu zastąp db1, db2 i table_name w poniższych zapytaniach swoimi wartościami.
Prostym przypadkiem użycia jest tabela o nazwie user z 2 polami o nazwach signup_date i last_login_date. Możesz obliczyć różnicę między dwiema datami, aby sprawdzić, jak ostatnio użytkownicy logowali się po rejestracji.
Różnica między dwiema datami występującymi jako kolumny w tabeli
SELECT UNIX_TIMESTAMP( dt2 ) - UNIX_TIMESTAMP( dt1 ) from table_name;
Różnica między dwiema datami przechowywanymi jako zmienne
SET @dt1='2013-11-09 00:00:00'; SET @dt2='2012-10-07 00:00:00'; SELECT UNIX_TIMESTAMP( @dt2 ) - UNIX_TIMESTAMP( @dt1 );
Różnica między dwiema datami w minutach
Jeśli chcesz poznać różnicę pod względem liczby minut, po prostu podziel powyższy wynik przez 60
SELECT (UNIX_TIMESTAMP( dt2 ) - UNIX_TIMESTAMP( dt1 ))/60 from table_name;
Różnica między dwiema datami w godzinach
Jeśli chcesz poznać różnicę pod względem liczby minut, po prostu podziel powyższy wynik przez 3600
SELECT (UNIX_TIMESTAMP( dt2 ) - UNIX_TIMESTAMP( dt1 ))/3600 from table_name;
Różnica między dwiema datami w dniach
Jeśli chcesz poznać różnicę w minutach, po prostu podziel powyższy wynik przez 3600*24