【发布时间】:2013-02-20 15:12:50
【问题描述】:
我正在尝试从 UTC-5 (NY) 的数据库中读取 Oracle TIMESTAMP WITH TIMEZONE 作为 UTC。
Oracle 快把我逼疯了:
SELECT
from_tz(MAX(TIMESTAMPWITHTIMEZONE),'UTC'),
SYS_EXTRACT_UTC(MAX(TIMESTAMPWITHTIMEZONE)),
SYS_EXTRACT_UTC(systimestamp),
SYSTIMESTAMP AT TIME ZONE 'UTC'
FROM TABLE
结果:
-
SYS_EXTRACT_UTC(systimestamp)给我:2013-02-20 14:59:04,这可能是对的。 -
SYSTIMESTAMP AT TIME ZONE 'UTC'给我:2013-02-20 15:59:04这是我自己的本地柏林 - 随便
现在我想将 TIMESTAMPWITHTIMEZONE (TIMESTAMP(6)) 设置为 UTC
-
SYS_EXTRACT_UTC(MAX(TIMESTAMPWITHTIMEZONE))是2013-02-20 08:55:01 -
from_tz(MAX(TIMESTAMPWITHTIMEZONE),'UTC')是2013-02-20 10:55:01
严肃点。甲骨文。我想要 UTC。
哪一个是正确的?还是有更好的办法?
【问题讨论】:
标签: sql oracle oracle11g timezone