Identifizieren Sie das SQL-Zeitformat

8

Ich habe diese Darstellung eines Datums (und einer Uhrzeit?) In einer SQLite-Datenbank gefunden. Ich erkenne es nicht als Standard wie UNIX-Zeitstempel. Kann mir jemand helfen, es zu identifizieren?

498586831.475129 oder 497469155.776235

manchmal ist es jedoch nur eine Zahl (ohne die.).

Einige Zusammenhänge: Ich erwarte, dass der Wert ein Datum (und wahrscheinlich auch eine Uhrzeit, wahrscheinlich auf die nächste Sekunde genau) ist, das nach 2007 liegt und nicht in der Zukunft liegt.

Weitere Informationen: Der SQLite-Feldtyp lautet TIMESTAMP

Xaser
quelle

Antworten:

10

Die TIMESTAMPWerte stammen wahrscheinlich aus dem Apple Core Foundation-Code, der auf einer Epoche vom 1. Januar 2001 um 00:00:00 GMT basiert.

Zeitdienstprogramme - Core Foundation | Apple Developer-Dokumentation

Core Foundation misst die Zeit in Einheiten von Sekunden. Der Basisdatentyp ist der CFTimeInterval, der die Differenz in Sekunden zwischen zwei Malen misst. Feste Zeiten oder Daten werden durch den CFAbsoluteTimeDatentyp definiert , der das Zeitintervall zwischen einem bestimmten Datum und dem absoluten Referenzdatum vom 1. Januar 2001 um 00:00:00 GMT misst.

Wolfram Alpha: 1. Januar 2001 00:00:00 GMT + 498586831.475129 Sekunden
Ergebnis: 4:20:31 GMT | Mittwoch, 19. Oktober 2016

Wolfram Alpha: 1. Januar 2001 00:00:00 GMT + 497469155.776235 Sekunden
Ergebnis: 5:52:35 GMT | Donnerstag, 6. Oktober 2016


Vorherige Antwort (immer noch relevant)

Ohne mehr Kontext müssen Sie nach sinnvollen Conversions suchen.

Der ganzzahlige Teil ist eine vernünftige Anzahl von Sekunden, und die Dezimalstellen können Mikrosekunden darstellen.

Option 1: UNIX-Epoche

Wolfram Alpha: 498586831.475129 Sekunden seit der Unix-Epoche

Entsprechende gregorianische Zeit und Datum:

16:20:31 UTC | Samstag, 19. Oktober 1985

Ist ein Datum im Jahr 1985 für diese Aufzeichnung angemessen?

Option 2: Alternative Epoche

Wolfram Alpha: 498586831.475129 vor Sekunden

Ergebnis:

9:43:46 Uhr EDT | Sonntag, 22. Juli 2001

Möglicherweise repräsentiert das Feld Sekunden seit dem 1. Januar 2000 oder dem 1. Januar 2001.

Option 3: Dauer

Wolfram Alpha: 498586831.475129 Sekunden

Einheitenumrechnungen:

8.3097805245855 × 10 ^ 6 Minuten

138496.342076425 Stunden

5770.680919851 Tage

15.799587725555 durchschnittliche gregorianische Jahre

Ist diese Zeit für die Aufzeichnung relevant?

BEARBEITEN: Mit Ihrem zusätzlichen Kontext (dessen Datum zwischen 2007 und der Gegenwart liegt) wird "Option 2: Alternative Epoche" am vernünftigsten, und diese Aufzeichnung erfolgt etwa 15,8 Jahre später.

Steven
quelle
Es ist in der Tat von einer iOS-App, gut entdeckt :)
Xaser