Significado dos bytes de despejo (systimestamp) do Oracle
Estou tentando entender o que significam os bytes do timestamp definido no meu banco de dados. Como eles são calculados para gerar a data mais legível?
Estou usando a consulta abaixo para obter os dados necessários:
SELECT systimestamp
,DUMP (systimestamp)
,sessiontimezone
FROM dual;
E a saída da minha consulta acima é:
+-------------------------------------+-----------------------------------------------------------------+------------------+
| systimestamp | dump(systimestamp) | sessiontimezone |
+-------------------------------------+-----------------------------------------------------------------+------------------+
| 31-JUL-15 08.55.06.157047000 +00:00 | Typ=188 Len=20: 223,7,7,31,8,55,6,0,216,88,92,9,0,0,5,0,0,0,0,0 | Europe/Bucharest |
+-------------------------------------+-----------------------------------------------------------------+------------------+
Encontrei alguns recursos online explicando o significado dos bytes (aqui), mas as regras não correspondem no meu cenário.
Por exemplo: 223 não é o século + 100 etc.
A razão pela qual estou tentando fazer isso é devido a um problema que estou enfrentando ao comparar os valores em umtimestamp(3)
coluna comsystimestamp
e estou tentando escrever um script para verificar se meu problema / solução é o mesmocomo explicado aqui.
Qualquer ajuda é apreciada.