Oracle current_timestamp到秒转换

Poo*_*rna 11 oracle

我们正在使用Oracle数据库.

在我们的表中,时间戳存储为自1970年以来的秒数,如何将通过current_timestamp()函数获得的时间戳转换为秒

Ton*_*ews 24

这样做:

select round((cast(current_timestamp as date) - date '1970-01-01')*24*60*60) from dual
Run Code Online (Sandbox Code Playgroud)

虽然如果我只对秒感兴趣,我不会使用current_timestamp,但我会使用SYSDATE:

select round((SYSDATE - date '1970-01-01')*24*60*60) from dual
Run Code Online (Sandbox Code Playgroud)

  • 我会在其周围添加`ROUND()` - 否则你可以得到像'1425030807.000000000000000000000000000004`这样的结果.此外,并不是每个人都知道一天有86,400秒?;) (4认同)
  • 警告:Unix时间是GMT/UTC,Oracle sysdate是本地时间.所以不确定这个解决方案是否准确 (3认同)