将日期添加到时间戳

Posted

技术标签:

【中文标题】将日期添加到时间戳【英文标题】:Add Day to Timestamp 【发布时间】:2011-09-02 19:54:39 【问题描述】:

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

【问题讨论】:

【参考方案1】:

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

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

【讨论】:

一个时间戳加上一个数值产生一个日期。 使用+可能会丢失时区。【参考方案2】:
select '01-jan-2011 11-09-05' + interval '2' day

【讨论】:

+1。更完整的 Oracle 示例:SELECT TO_TIMESTAMP('01-jan-2011 11-09-05','DD-Mon-YYYY HH24-MI-SS') + INTERVAL '2' DAY FROM dual; 使用间隔似乎比使用+ 更好,因为我注意到后者丢失了时区。

以上是关于将日期添加到时间戳的主要内容,如果未能解决你的问题,请参考以下文章

将浮点列添加到时间戳类型列(秒+毫秒)

将 SQL Server 中 datetime 字段的默认值添加到时间戳

Hive 未检测到时间戳格式

将五个小时添加到时间戳字段

Laravel 4.2 - 将时间添加到时间戳

Oracle 字符串到日期到时间戳