SQL Academy
Premium
Funktionsreferenz

TIMESTAMPDIFF

Entsprechung in PostgreSQL:

Gibt die Differenz zwischen zwei Daten in der angegebenen Einheit zurück.

MySQL 8.1
TIMESTAMPDIFF(unit, datetime1, datetime2)

Parameter

unitSchlüsselwort
Einheit, in der die Differenz gemessen wird
Werte:MICROSECONDSECONDMINUTEHOURDAYWEEKMONTHQUARTERYEAR
datetime1DATETIME
Startdatum, wird von datetime2 abgezogen
datetime2DATETIME
Enddatum

Rückgabewert

Ganze Zahl voller Einheiten (datetime2 minus datetime1), negativ, wenn datetime2 früher liegt; ein angefangenes Jahr oder ein angefangener Monat zählt nicht

Beispiele

Unvollständiges Jahr zählt nicht

MySQL 8.1
SELECT TIMESTAMPDIFF(YEAR, '2012-06-12', '2022-06-11') AS years;
years
9

Alter zu einem Stichtag

MySQL 8.1
SELECT member_name,
	TIMESTAMPDIFF(YEAR, birthday, '2024-01-01') AS age
FROM FamilyMembers;
member_nameage
Headley Quincey63
Flavia Quincey60
Andie Quincey40
Lela Quincey38
Annie Quincey35
Ernest Forrest62
Constance Forrest55
Wednesday Addams18

Flugdauer in Minuten

MySQL 8.1
SELECT id,
	town_from,
	town_to,
	TIMESTAMPDIFF(MINUTE, time_out, time_in) AS minutes
FROM Trip;
idtown_fromtown_tominutes
1100RostovParis200
1101ParisRostov213
1123RostovVladivostok680
1124VladivostokRostov650
1145MoscowRostov108
1146RostovMoscow126
1181RostovMoscow109
1182MoscowRostov115
1187RostovMoscow117
1188MoscowRostov118

Details

Anders als bei DATEDIFF wird das erste Argument vom zweiten abgezogen: Sowohl TIMESTAMPDIFF(DAY, '2022-12-01', '2022-12-05') als auch DATEDIFF('2022-12-05', '2022-12-01') geben 4 zurück.

Siehe auch

Wo du es lernst