Na documentação do Mongodb o Objectid é formado com um timestamp como os primeiros 4 bytes, mas isso é representado em hexadecimal. Supondo que o valor hexadecimal seja armazenado como uma string no PostgreSQL, a consulta a seguir extrairá apenas os primeiros 8 caracteres desse objectid, converterá isso em um inteiro (que são segundos de 1970-01-01) e converterá esse inteiro em um timestamp . Por exemplo:
SELECT TO_TIMESTAMP(int_val) ts_val
FROM (
SELECT ('x' || lpad(left(objectid,8), 8, '0'))::bit(32)::int AS int_val
FROM (
VALUES ('507c7f79bcf86cd7994f6c0e')
) AS t1(objectid)
) AS t2
;
A conversão de uma string hexadecimal em inteiro é discutida aqui:Converter hexadecimal na representação de texto em número decimal