Identificare il formato ora SQL


8

Ho trovato questa rappresentazione di una data (e ora?) In un database SQLite. Non lo riconosco come qualcosa di standard come il timestamp UNIX, qualcuno può aiutarmi a identificarlo?

498586831.475129 o 497469155.776235

a volte, tuttavia, è solo un numero (senza il.).

Qualche contesto: mi aspetto che il valore sia una data (e probabilmente anche l'ora, probabilmente il secondo più vicino) che è post 2007 e non in futuro.

Ulteriori informazioni: il tipo di campo SQLite è TIMESTAMP

Risposte:


10

I TIMESTAMPvalori sono probabili dal codice della Apple Core Foundation basato su un'epoca del 1 gennaio 2001 00:00:00 GMT.

Time Utilities - Core Foundation | Documentazione per gli sviluppatori Apple

La Core Foundation misura il tempo in unità di secondi. Il tipo di dati di base è il CFTimeInterval, che misura la differenza in secondi tra due volte. Gli orari o le date fissi sono definiti dal CFAbsoluteTimetipo di dati, che misura l'intervallo di tempo tra una data particolare e la data di riferimento assoluta del 1 ° gennaio 2001 00:00:00 GMT.

Wolfram Alpha: 1 gennaio 2001 00:00:00 GMT + 498586831.475129 secondi
Risultato: 4:20:31 GMT | Mercoledì 19 ottobre 2016

Wolfram Alpha: 1 gennaio 2001 00:00:00 GMT + 497469155.776235 secondi
Risultato: 5:52:35 GMT | Giovedì 6 ottobre 2016


Risposta precedente (ancora rilevante)

Senza più contesto, è necessario cercare conversioni che abbiano un senso.

La parte intera è un numero ragionevole di secondi e le posizioni decimali potrebbero rappresentare microsecondi.

Opzione 1: UNIX Epoch

Wolfram Alpha: 498586831.475129 secondi dall'epoca unix

Ora e data gregoriane corrispondenti:

16:20:31 UTC | Sabato 19 ottobre 1985

Una data nel 1985 è ragionevole per quel record?

Opzione 2: epoca alternativa

Wolfram Alpha: 498586831.475129 secondi fa

Risultato:

21:43:46 EDT | Domenica 22 luglio 2001

Forse, il campo ha rappresentato secondi dal 1 ° gennaio 2000 o 1 ° gennaio 2001.

Opzione 3: durata

Wolfram Alpha: 498586831.475129 secondi

Conversioni di unità:

8.3097805245855 × 10 ^ 6 minuti

138496.342076425 ore

5770.680919851 giorni

15.799587725555 anni gregoriani medi

Questo periodo di tempo è rilevante per la registrazione?

EDIT: con il tuo contesto aggiuntivo (della data tra il 2007 e il presente), "Opzione 2: Epoca alternativa" diventa il più ragionevole e questo record si verifica circa 15,8 anni dopo.


È davvero da un'app iOS, ben individuata :)
Xaser
Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.