Oracle 时间:获取当前时间戳(oracle当前时间戳)
和UTC 时间
Oracle 提供了一系列函数来获取精准的时间和日期,这些函数可以用来取代非标准的传统化时间获取方法,这里我们来看一下如何获取当前时间戳和UTC 时间。
### 获取当前时间戳
获取当前时间戳,Oracle 内置有两个函数可以直接调用获取当前 Unix 时间戳:
“`sql
SELECT SYSTIMESTAMP FROM DUAL;
或者
```sqlSELECT 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 时间格式转成字符串:
```sqlSELECT CAST(FROM_TZ(CURRENT_TIMESTAMP, '00:00') AS VARCHAR2(50)) FROM DUAL;
上面的函数结果类似:`2017-12-07 05:50:02.626895 Europe/Berlin`,可以根据需要更改字符串格式。
###总结
Oracle 自带的一系列函数可以让用户获取更精准更可靠的时间信息,上面只是其中一小部分,还有更多函数可以结合使用来实现更加复杂的开发需求。