2016-06-10 57 views
1

我在oracle数据库中有号码列,它存储了一个时间戳。我想将其转换为DATE,我不知道如何去做。在oracle中将号码转换成日期格式

以下是我正在寻找,请建议。

1465484486246应该转换为2016/06/09 15:01:26,246 GMT

回答

0

您可以使用to_date一起NUMTODSINTERVAL达到你想要的东西:

TO_CHAR(TO_DATE('1970/01/01 00:00:00', 'YYYY/MM/DD HH24:MI:SS') + NUMTODSINTERVAL(col/1000,'SECOND'), 
     'YYYY/MM/DD HH24:MI:SS') 

在这里,我假设你的时间戳列称为col。您给我们的时间戳1465484486246以毫秒为单位,这就是我在NUMTODSINTERVAL中使用col/1000的原因。

+0

我得到的结果是“09-JUN-16”,其余部分在结果集中缺失。 – ankitpandey

+0

现在我得到了ORA-01843:执行sql时不是有效的月份错误。 – ankitpandey

+1

它的工作,非常感谢蒂姆。 – ankitpandey