Acho que você deve começar entendendo os tipos de dados envolvidos. O tipo de dados "datetime" no PostgreSQL é na verdade
timestamp e há duas variantes:com
e sem fuso horário
. O padrão é sem
. Internamente, o PostgreSQL sempre armazena um timestamp UTC. Os próprios dados de fuso horário não salvo com timestamps, nem com nem sem fuso horário. Esses são apenas decoradores para entrada e saída que acomodam a configuração de fuso horário do cliente.
Encontre uma explicação detalhada, exemplos e links nesta resposta relacionada .