我的数据库以格林威治标准时间显示时间。
我可以通过执行以下操作将其中的小时和分钟部分转换为数字:
TO_NUMBER(TO_CHAR(CORE_UPDATE_TS, 'HH24MI'))
其中core_update_ts是从数据库接收的值。但是,我的要求是将core_update_ts转换为美国/Los_Angeles,然后将其更改为数字。
我无法完成此特定任务。当我这样做时,
to_number(to_char((from_tz(to_timestamp(to_char(CORE_UPDATE_TS, 'YYYY-MM-DD HH24:MI'),
'YYYY-MM-DD HH24:MI') ,'GMT') at time zone 'America/Los_Angeles'),'DD-MON-YYYY
HH24:MI'), 'HH24MI') i am getting error.
我该怎么做?
CORE_UPDATE_TS
列的数据类型是什么?
如果是日期,则应将其转换为时间戳并简单地指定时区,然后提取。
cast(CORE_UPDATE_TS as timestamp) at time zone 'America/Los_Angeles'
to_char(cast(CORE_UPDATE_TS as timestamp) at time zone 'America/Los_Angeles','HH24MI')
如果是时间戳,只需指定时区。
CORE_UPDATE_TS at time zone 'America/Los_Angeles'
to_char(CORE_UPDATE_TS at time zone 'America/Los_Angeles','HH24MI')