sql >> Database teknologi >  >> RDS >> Mysql

Sådan finder du forskellen mellem to datoer i MySQL

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

  1. Database-failover til WordPress-websteder

  2. MySQL-serveren er gået væk - på præcis 60 sekunder

  3. Hvad er den korrekte SQL-type til at gemme et .Net Timespan med værdier> 24:00:00?

  4. Sådan eksporteres tabel til CSV ved hjælp af Oracle SQL Developer?