SQL Academy
Premium
Funktionsreferenz

TIMEDIFF

Gibt die Differenz zwischen zwei Uhrzeiten oder zwei Werten mit Datum und Uhrzeit zurück.

MySQL 8.4
TIMEDIFF(datetime1, datetime2)
datetime1
Uhrzeit oder Datum mit Uhrzeit, von dem datetime2 abgezogen wird
DATETIME
datetime2
Abzuziehender Wert desselben Typs
DATETIME

Rückgabewert

Uhrzeit (TIME), kann negativ und länger als 24 Stunden sein, aber höchstens 838:59:59; NULL, wenn die Argumente verschiedene Typen haben

Beispiele

Unterschied innerhalb eines Tages

MySQL 8.4
SELECT TIMEDIFF('2022-12-05 18:00:00', '2022-12-05 14:30:00') AS diff;
diff
03:30:00

Flugdauer

MySQL 8.4
SELECT id,
	town_from,
	town_to,
	TIMEDIFF(time_in, time_out) AS duration
FROM Trip;
idtown_fromtown_toduration
1100RostovParis03:20:00
1101ParisRostov03:33:00
1123RostovVladivostok11:20:00
1124VladivostokRostov10:50:00
1145MoscowRostov01:48:00
1146RostovMoscow02:06:00
1181RostovMoscow01:49:00
1182MoscowRostov01:55:00
1187RostovMoscow01:57:00
1188MoscowRostov01:58:00

Negativer Unterschied

MySQL 8.4
SELECT TIMEDIFF('14:00:00', '18:00:00') AS diff;
diff
-04:00:00

Zu großer Unterschied wird begrenzt

MySQL 8.4
SELECT TIMEDIFF('2022-12-05 18:00:00', '2021-12-01 14:00:00') AS diff;
diff
838:59:59

Details

Um die Differenz als Anzahl von Sekunden zu erhalten, umschließe das Ergebnis mit TIME_TO_SEC oder verwende TIMESTAMPDIFF.

Siehe auch