В настоящее время я работаю над переносом схемы базы данных Oracle в Postgres. В рамках этого я должен преобразовать пользовательскую функцию утилиты в Oracle, которая генерирует временные метки, основанные на часовом поясе. Но значения, полученные от Oracle и Postgres, по-видимому, меняются на один час.Временная разница между оракулом и postgres
Oracle:
SELECT (to_timestamp_tz('20300714 235959 CET','YYYYMMDD HH24MISS TZR') - to_timestamp_tz('19700101 000000 GMT','YYYYMMDD HH24MISS TZR'))
as foo FROM dual;
дает +22109 21: 59: 59,000000
Postgres:
select ('20300714 235959'::timestamp AT TIME ZONE 'CET') - ('19700101 000000'::timestamp AT TIME ZONE 'GMT') as foo;
урожаи 22109 дней 22:59:59
I g Причина этой разницы связана с летним временем, но я не уверен. Может ли кто-нибудь помочь мне решить эту проблему. Я использую Postgres v9.6 и Oracle 12c.