Tento dotaz můžete použít, aniž byste se museli starat o změny časového pásma.
select to_char(cast(application_recv_date as timestamp) at time zone 'US/Eastern',
'MON dd, YYYY'
)
from application;
Příklad:
EDT:
select cast(date'2014-04-08' as timestamp) d1,
cast(date'2014-04-08' as timestamp) at time zone 'US/Eastern' d2
from dual;
D1 D2
---------------------------------- -------------------------------------------
08-APR-14 12.00.00.000000 AM 07-APR-14 08.00.00.000000 PM US/EASTERN
EST:
select cast(date'2014-12-08' as timestamp) d1,
cast(date'2014-12-08' as timestamp) at time zone 'US/Eastern' d2
from dual;
D1 D2
---------------------------------- -------------------------------------------
08-DEC-14 12.00.00.000000 AM 07-DEC-14 07.00.00.000000 PM US/EASTERN
AKTUALIZACE:
Děkujeme Alexi Pooleovi za připomenutí, že když není zadáno časové pásmo, použije se pro převod místní časové pásmo.
Chcete-li vynutit rozpoznání data jako GMT, použijte from_tz.
from_tz(cast(date'2014-12-08' as timestamp), 'GMT') at time zone 'US/Eastern'