„05.03.2024" bedeutet in Deutschland den 5. März — in den USA dagegen den 3. Mai. Allein diese eine Formatkonvention verursacht in der Praxis mehr Fehler bei Datumsdifferenzen als Schaltjahre und Zeitzonen zusammen, weil das „falsch gelesene" Datum trotzdem völlig plausibel aussieht.
TT.MM.JJJJ gegen MM/TT/JJJJ
In Deutschland, Österreich und der Schweiz steht der Tag zuerst: 05.03.2024 heißt 5. März. In den USA steht der Monat zuerst — dieselbe Zeichenfolge bedeutet dort den 3. Mai. Wird ein Datum aus einer amerikanischen API oder Tabelle nach deutscher Konvention gelesen, kann die berechnete Differenz um mehrere Wochen danebenliegen, ohne dass irgendein Fehler auftritt.
Das eindeutige Format: ISO 8601
Die Schreibweise 2024-03-05 (Jahr-Monat-Tag) wird in jedem Land gleich gelesen, weshalb sie der Standard in APIs, Datenbanken und Logdateien ist. Wenn beim Datenaustausch zwischen Systemen das Format frei wählbar ist, beseitigt ISO 8601 dieses Problem dauerhaft.
Zeitzonen und Tagesgrenzen
Enthalten Daten eine Uhrzeit statt nur ein Kalenderdatum, kann eine Zeitzonendifferenz den Tageszähler um eins verschieben: 23:30 Uhr in Berlin und 17:30 Uhr im selben Moment in New York können je nach gewählter Zeitzone auf unterschiedliche Kalendertage fallen.
Wofür man das braucht
- Die genaue Anzahl der Tage bis zu einer Deadline oder seit dem Projektstart berechnen.
- Prüfen, ob ein Mietvertrag, ein Abonnement oder eine Garantie noch läuft.
- Ein im falschen Format gelesenes Datum entdecken, bevor es einen ganzen Bericht verfälscht.
Warum „Monatsdifferenz" keine eindeutig richtige Antwort hat
Zieht man vom 31. März einen Monat ab, ist das Ergebnis mehrdeutig — den 31. Februar gibt es nicht, daher runden manche Systeme auf den 28. Februar ab, andere verschieben die überzähligen Tage auf den 3. März. Beide Ansätze sind vertretbar, stimmen aber nicht überein — gut zu wissen, wenn ein Ergebnis nicht zu dem eines anderen Tools passt.