select CAST (0x00009CEF00A25634 as datetime)
dà 2009-12-30 09:51:03.000
Questi sono due numeri interi. Uno per la parte della data 0x00009CEF
(decimale 40175) e uno per la parte temporale 00A25634
(decimale 10638900). La parte della data è un numero intero con segno che indica il numero di giorni dal 1 gennaio 1900. La parte dell'ora è un numero intero che rappresenta il numero di tick.
Ci sono 300 tick in un secondo.
Si può vedere che anche quanto segue restituisce lo stesso risultato
SELECT DATEADD(MILLISECOND,10638900*10/3.0, DATEADD(DAY,40175, '19000101'))
Dovrai capire come applicarlo a postgres
.
Modifica:una risposta qui a quanto pare fa questo. Non l'ho testato da solo.