Oracle 时间:获取当前时间戳(oracle当前时间戳)

和UTC 时间

Oracle 提供了一系列函数来获取精准的时间和日期,这些函数可以用来取代非标准的传统化时间获取方法,这里我们来看一下如何获取当前时间戳和UTC 时间。

### 获取当前时间戳

获取当前时间戳,Oracle 内置有两个函数可以直接调用获取当前 Unix 时间戳:

“`sql

SELECT SYSTIMESTAMP FROM DUAL;


或者

```sql
SELECT EXTRACT(epoch FROM CURRENT_TIMESTAMP) FROM DUAL;

上面的函数结果都是 13 位时间戳,一般也可以认为是安全唯一。

### 获取 UTC 时间

要获取 UTC 时间,可以使用 Oracle 提供的 `FROM_TZ` 函数,它可以把本地时间转换成 UTC 时间:

“`sql

SELECT FROM_TZ(CURRENT_TIMESTAMP, ’00:00′) FROM DUAL;


可以使用 `CAST` 函数结合 `FROM_TZ` 函数把 UTC 时间格式转成字符串:

```sql
SELECT CAST(FROM_TZ(CURRENT_TIMESTAMP, '00:00') AS VARCHAR2(50)) FROM DUAL;

上面的函数结果类似:`2017-12-07 05:50:02.626895 Europe/Berlin`,可以根据需要更改字符串格式。

###总结

Oracle 自带的一系列函数可以让用户获取更精准更可靠的时间信息,上面只是其中一小部分,还有更多函数可以结合使用来实现更加复杂的开发需求。


数据运维技术 » Oracle 时间:获取当前时间戳(oracle当前时间戳)