2 Stimmen

Datum/Zeit als Fließkomma gespeichert, welcher Algorithmus wird verwendet?

Ich habe Zugriff auf die Datenbank einer Anwendung eines Drittanbieters und sehe ein Feld namens "Datum", das Datums-/Zeitwerte als Fließkommazahlen speichert, aber ich bin mir nicht sicher, wie diese Fließkommazahl einem Datum/Zeitpunkt zugeordnet wird. Für diese Datenbank gibt es keine Dokumentation.

Hier sind einige Beispieldaten:

date-field        actual-date-time
253507382.168744  1/12/09 6:43 PM PST
253507480.136126  1/12/09 6:44 PM PST
253508091.838982  1/12/09 6:54 PM PST
256703604.015055  2/18/09 6:33 PM PST
256704413.484674  2/18/09 6:46 PM PST

Hinweis: Ich musste diese Werte manuell eingeben, daher kann es sein, dass sie ein wenig abweichen. Wenn Sie mehr Daten sehen möchten, lassen Sie es mich wissen und ich füge weitere hinzu.

Ich hoffe, dass jemand mit der Speicherung von Daten in diesem Format vertraut ist und mich wissen lassen kann, wie man ein Datum/eine Uhrzeit mit einer Gleitkommazahl erhält.

3voto

Mark Ransom Punkte 283960

Wenn Sie sich die Veränderung der Zahlen in den 10- und 13-Minuten-Intervallen ansehen, werden Sie feststellen, dass sie etwa 60 beträgt. Daraus schließe ich, dass es sich um eine Zählung der Sekunden ab einem Basisdatum handelt.

Ich glaube, das Basisdatum ist der 1.1.2000 oder 1.1.2001.

Editar: Das Basisdatum scheint der 1.1.2001 zu sein, und auch die Uhrzeit scheint angepasst zu sein - wahrscheinlich handelt es sich um UTC, wobei Ihre lokale Zeitverschiebung hinzugefügt wurde.

2voto

jts Punkte 1279

Wenn Sie einen der beiden Punkte subtrahieren, werden Sie feststellen, dass die Werte die Anzahl der Sekunden mit Mikrosekundengenauigkeit darstellen. Es sollte einfach sein, das Basisdatum zu ermitteln, an dem die Uhr "begann". Bei Unix und verwandten Systemen ist dies der 1. Januar 1970.

1voto

Sam Holloway Punkte 1989

Die Zeitstempel sind "Anzahl der seit 00:00 Uhr am 1. Januar 2001 verstrichenen Sekunden". Das ist kein übliches Datumsformat, aber zumindest sollte es jetzt, wo Sie wissen, was es bedeutet, einfach zu handhaben sein!

CodeJaeger.com

CodeJaeger ist eine Gemeinschaft für Programmierer, die täglich Hilfe erhalten..
Wir haben viele Inhalte, und Sie können auch Ihre eigenen Fragen stellen oder die Fragen anderer Leute lösen.

Powered by:

X