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;Alter zu einem Stichtag
MySQL 8.1
SELECT member_name,
TIMESTAMPDIFF(YEAR, birthday, '2024-01-01') AS age
FROM FamilyMembers;Flugdauer in Minuten
MySQL 8.1
SELECT id,
town_from,
town_to,
TIMESTAMPDIFF(MINUTE, time_out, time_in) AS minutes
FROM Trip;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.