如何在 current_timestamp SQL (Oracle) 中添加 10 秒

2022-01-13 00:00:00 timestamp sql oracle

我想在我的 PL/SQL 脚本中为 current_timestamp 添加 10 秒.我尝试了下面的代码,但它的输出不是时间戳格式.

I want to add 10 seconds to current_timestamp in my PL/SQL script. I tried below code but it's output is not in timestamp format.

SELECT CURRENT_TIMESTAMP+1/24/60/6 FROM dual;

输出:

CURRENT_TIMESTAMP+1/24/60/6

---------------------------
28-AUG-15

Mysql server中有没有类似TIMESTAMPADD的功能?

Is there any function similar to TIMESTAMPADD in Mysql server?

推荐答案

在 Oracle 中,如果你想要一个 timestamp 作为结果,而不是 date (a date 总是包含到秒的时间,所以你可能只想要一个 date),你想添加一个 interval时间戳.构造区间有多种方法——你可以使用区间文字

In Oracle, if you want a timestamp as the result, rather than a date (a date always includes the time to the second, though, so you may just want a date), you'd want to add an interval to the timestamp. There are various ways to construct an interval-- you can use an interval literal

select current_timestamp + interval '10' second
  from dual

或者你可以使用 numtodsinterval 函数

or you could use the numtodsinterval function

select current_timestamp + numToDSInterval( 10, 'second' )
  from dual

相关文章