2010-06-30 88 views
2

我有權訪問第三方應用程序的數據庫,並且我看到一個名爲「date」的字段,它將日期/時間值存儲爲浮點數,但我不確定此浮點數如何映射到日期/時間。這個數據庫沒有文檔。日期/時間存儲爲浮點,使用哪種算法?

下面是一些樣本數據:

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 

注:我有這麼有他們可能會關閉有點輕微的機會手動輸入這些值。如果您想查看更多數據,請告訴我,我會添加更多。

我希望有人熟悉以這種格式存儲日期,並可以讓我知道如何獲得給定浮點數的日期/時間。

回答

2

如果你看看10和13分鐘間隔內的數字變化,你會發現它約爲60.因此,我得出這樣的結論:從基準日期開始的秒數。

我認爲基準日期是1/1/2000或1/1/2001。

編輯:基準日期似乎是1/1/2001,並且時間似乎也會被調整 - 它可能是UTC,加上本地時間偏移量。

1

如果減去這兩點中的任何一點,您將看到這些值表示以微秒精度表示的秒數。計算時鐘「開始」的基準日期應該很容易。在Unix和相關係統上,這是1970年1月1日。

0

時間戳是「自2001年1月1日00:00後經過的秒數」。這不是一種常見的日期格式,但至少它應該很容易處理,現在你知道它代表了什麼!