Identificar formato de hora SQL


8

Eu encontrei essa representação de uma data (e hora?) Em um banco de dados SQLite. Não o reconheço como algo padrão, como o carimbo de data e hora do UNIX, alguém pode me ajudar a identificá-lo?

498586831.475129 ou 497469155.776235

às vezes, porém, é apenas um número (sem o.).

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

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

Respostas:


10

Os TIMESTAMPvalores provavelmente são do código da Apple Core Foundation, com base em uma época de 1º de janeiro de 2001 às 00:00:00 GMT.

Utilitários de tempo - Core Foundation | Documentação do desenvolvedor da Apple

O Core Foundation mede o tempo em unidades de segundos. O tipo de dados base é o CFTimeInterval, que mede a diferença em segundos entre dois tempos. Os horários fixos, ou datas, são definidos pelo CFAbsoluteTimetipo de dados, que mede o intervalo de tempo entre uma data específica e a data de referência absoluta de 1 de janeiro de 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 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 segundos desde a época unix

Data e hora gregoriana correspondente:

16:20:31 pm UTC | Sábado, 19 de outubro de 1985

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

Opção 2: época alternativa

Wolfram Alpha: 498586831.475129 segundos atrás

Resultado:

21:43:46 pm EDT | Domingo, 22 de julho de 2001

Talvez, o campo tenha representado segundos desde 1 de janeiro de 2000 ou 1 de janeiro de 2001.

Opção 3: Duração

Wolfram Alpha: 498586831.475129 segundos

Conversões de unidades:

8,3097805245855 × 10 ^ 6 minutos

138496.342076425 horas

5770.680919851 dias

15,799587725555 anos Gregorianos médios

Essa quantidade de tempo é relevante para o registro?

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


Na verdade, é a partir de um aplicativo iOS, bem manchado :)
Xaser
Ao utilizar nosso site, você reconhece que leu e compreendeu nossa Política de Cookies e nossa Política de Privacidade.
Licensed under cc by-sa 3.0 with attribution required.