20

如何在时间戳中添加天数?如果我的时间戳是01-JAN-2011 11-09-05并且我添加 2 天,我想要03-JAN-2011 11-09-05.

4

3 回答 3

32
select '01-jan-2011 11-09-05' + interval '2' day
于 2011-05-26T17:53:17.673 回答
4

一个完全以 Oracle 为中心的解决方案是简单地将 2 添加到时间戳值,因为 Oracle 日期/时间戳的默认间隔是天:

SELECT TO_TIMESTAMP('01-jan-2011 11-09-05','DD-Mon-YYYY HH24-MI-SS') + 2
  FROM dual;
于 2011-05-26T18:36:54.260 回答
0

在类似的情况下,我使用了:

SELECT TO_TIMESTAMP('01-jan-2011 11-09-05','DD-Mon-YYYY HH24-MI-SS') + NUMTODSINTERVAL(2, 'DAY')

因为,否则,表达式将转换为 DATE 并且精度会丢失。请参阅:NUMTODSINTERVAL 文档

于 2022-02-17T12:55:08.550 回答