SQL Academy
Premium
Funktionsreferenz

TIMEDIFF

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

MySQL 8.1
TIMEDIFF(datetime1, datetime2)

Parameter

datetime1DATETIME
Uhrzeit oder Datum mit Uhrzeit, von dem datetime2 abgezogen wird
datetime2DATETIME
Abzuziehender Wert desselben Typs

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.1
SELECT TIMEDIFF('2022-12-05 18:00:00', '2022-12-05 14:30:00') AS diff;
diff
03:30:00

Flugdauer

MySQL 8.1
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.1
SELECT TIMEDIFF('14:00:00', '18:00:00') AS diff;
diff
-04:00:00

Zu großer Unterschied wird begrenzt

MySQL 8.1
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