相关疑难解决方法(0)

如何处理Oracle中的闰秒

今晚将有一个闰秒添加到时钟,在一天的最后一小时的最后一分钟将有61秒.

2015-06-30 23:59:60
Run Code Online (Sandbox Code Playgroud)

但是,Oracle一分钟只支持60秒:

TO_DATE( '2015-06-30 23:59:60', 'YYYY-MM-DD HH24:MI:SS' )    
Run Code Online (Sandbox Code Playgroud)

错误:

ORA-01852: seconds must be between 0 and 59
Run Code Online (Sandbox Code Playgroud)

SELECT TO_DATE( '2015-06-30 23:59:59', 'YYYY-MM-DD HH24:MI:SS' ) + INTERVAL '1' SECOND AS Incr_Second_Before,
       TO_DATE( '2015-07-01 00:00:00', 'YYYY-MM-DD HH24:MI:SS' ) - INTERVAL '1' SECOND AS Decr_Second_After
FROM   DUAL
Run Code Online (Sandbox Code Playgroud)

给出输出:

|     INCR_SECOND_BEFORE |      DECR_SECOND_AFTER |
|------------------------|------------------------|
| July, 01 2015 00:00:00 | June, 30 2015 23:59:59 |
Run Code Online (Sandbox Code Playgroud)

有没有办法在Oracle中处理闰秒?

oracle

10
推荐指数
1
解决办法
963
查看次数

标签 统计

oracle ×1