Identifica o formato de hora do SQL

8

Encontrei esta representação de uma data (e hora?) em um banco de dados SQLite. Eu não reconheço isso como algo padrão como timestamp do UNIX, alguém pode me ajudar a identificá-lo?

498586831.475129 ou 497469155.776235

às vezes, no entanto, é apenas um número (sem o.).

Algum contexto: espero que o valor seja uma data (e provavelmente também o tempo, provavelmente para o segundo mais próximo) que é posterior a 2007 e não no futuro.

Mais informações: o tipo de campo SQLite é TIMESTAMP

    
por Xaser 10.05.2017 / 19:25

1 resposta

10

Os valores de TIMESTAMP são prováveis do código da Apple Core Foundation com base em uma data de 1º de janeiro de 2001 às 00:00:00 GMT.

Time Utilities - Core Foundation | Apple Developer Documentation

Core Foundation measures time in units of seconds. The base data type is the CFTimeInterval, which measures the difference in seconds between two times. Fixed times, or dates, are defined by the CFAbsoluteTime data type, which measures the time interval between a particular date and the absolute reference date of Jan 1 2001 00:00:00 GMT.

Wolfram Alpha: 1º de janeiro de 2001 00:00:00 GMT + 498586831.475129 segundos
Resultado: 4:20:31 GMT | Quarta-feira, 19 de outubro de 2016

Wolfram Alpha: 1º de janeiro de 2001 00:00:00 GMT + 497469155.776235 segundos
Resultado: 5:52:35 GMT | Quinta-feira, 6 de outubro de 2016

Resposta anterior (ainda relevante)

Sem mais contexto, você deve procurar por conversões que façam sentido.

A parte inteira é um número razoável de segundos, e as casas decimais podem representar microssegundos.

Opção 1: Época do UNIX

Wolfram Alpha: 498586831.475129 seconds since unix epoch

Corresponding Gregorian time and date:

4:20:31 pm UTC | Saturday, October 19, 1985

Uma data em 1985 é razoável para esse registro?

Opção 2: época alternativa

Wolfram Alpha: 498586831.475129 seconds ago

Result:

9:43:46 pm EDT | Sunday, July 22, 2001

Talvez, o campo representasse segundos desde 1º de janeiro de 2000 ou 1º de janeiro de 2001.

Opção 3: duração

Wolfram Alpha: 498586831.475129 seconds

Unit conversions:

8.3097805245855×10^6 minutes

138496.342076425 hours

5770.680919851 days

15.799587725555 average Gregorian years

Esse período de tempo é relevante para o registro?

EDITAR: Com seu contexto adicional (da data entre 2007 e o presente), a "Opção 2: Época Alternativa" se torna a mais razoável, e esse registro ocorre cerca de 15,8 anos depois. / p>     

por 10.05.2017 / 20:08

Tags