从纪元时间转换为世界标准时间+2小时

问题描述 投票:0回答:1

我正在尝试从Oracle DB表中提取数据,并且能够正确转换time列,但是它应该是-2小时。

[请记住,StartTime列在Epochtime中。您能告诉我我的查询出了什么问题吗?

列名称为:DescriptionStartTime

select Description,
       TO_CHAR(FROM_TZ(CAST(
          DATE '1970-01-01' + (1/24/60/60/1000) * StartTime as TIMESTAMP),
         'America/New-York'),
         'DD-MM-YYYY HH24:MI:SS') as StartTime 
  from MyTable

我尝试更改America/New-York,但最终得到了相同的结果。

oracle timezone timezone-offset
1个回答
0
投票

这是我解决问题的方式:

select TO_CHAR(FROM_TZ(CAST(DATE '1970-01-01' + (1/24/60/60/1000) * StartTime AS TIMESTAMP), 'UTC') AT TIME ZONE 'America/New_York', 'DD-MM-YYYY HH24:MI:SS') as StartTime
from MyTable

希望对他人有帮助。

© www.soinside.com 2019 - 2024. All rights reserved.