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

MySQL konverter timediff output til dag, time, minut, sekund format

SELECT CONCAT( FLOOR(HOUR(TIMEDIFF('2010-01-06 08:46', '2010-01-01 12:30')) / 24), ' days ', MOD(HOUR(TIMEDIFF('2010-01-06 08:46', '2010-01-01 12:30')), 24), ' hours ', MINUTE(TIMEDIFF('2010-01-06 08:46', '2010-01-01 12:30')), ' minutes')

Brug din sluttid og starttid til de faste værdier for dato og klokkeslæt i mit eksempel

I henhold til de to kommentarer nedenfor virker denne løsning kun for datoforskelle inden for 35 dage. Hvis du ved, at der er mere end 35 dage mellem start og slut, dvs. forskelle over en måned, så lad være med at bruge det. Andre svar her ved hjælp af TIMESTAMPDIFF vil fungere.



  1. SQL-forespørgselsoptimering - Sådan bestemmes hvornår og om det er nødvendigt

  2. PL/SQL Performance Tuning for LIKE '%...%' Wildcard-forespørgsler

  3. Sådan designer du en mysql-database med flere lejere

  4. Sådan får du den aktuelle dato i Oracle