Oracle - 将数字8位数转换为日期

时间:2013-07-09 08:14:28

标签: sql oracle datetime oracle-sqldeveloper

我有一个oracle数据库,其中日期记录为8位数字,例如:

59696580 which represent '01/07/2013  00:00:00'
59696610 which represent '01/07/2013  00:30:00'

有人知道如何将这个8位数转换成Oracle SQL中的日期吗?

由于

1 个答案:

答案 0 :(得分:3)

它可能取决于时区,但看起来此数字是自12-30-1899 1:00:00以来的分钟数,给定您希望它们表示的日期。

为了获取日期,您只需使用添加+运算符即可为该基准时间添加若干天。鉴于您的数字代表分钟数,您可以除以1440来找出这些分钟代表的天数:

to_date('12-30-1899 1:00:00','MM-DD-YYYY HH24:Mi:SS') + (59696580/1440) 
to_date('12-30-1899 1:00:00','MM-DD-YYYY HH24:Mi:SS') + (59696610/1440) 

SQL Fiddle