📜  PLSQL | CURRENT_TIMESTAMP函数

📅  最后修改于: 2022-05-13 01:55:25.720000             🧑  作者: Mango

PLSQL | CURRENT_TIMESTAMP函数

PLSQL CURRENT_TIMESTAMP函数用于返回会话时区中的当前日期和时间。使用的时区是由 ALTER SESSION 命令设置的当前 SQL 会话的时区。 CURRENT_TIMESTAMP函数返回 TIMESTAMP WITH TIME ZONE 的值,而 CURRENT_DATE函数返回没有时区数据的 DATE 值。
CURRENT_TIMESTAMP函数不接受任何参数。

句法:

CURRENT_TIMESTAMP

使用的参数:
CURRENT_TIMESTAMP函数不接受任何参数。

返回值:
CURRENT_TIMESTAMP函数以 TIMESTAMP WITH TIME ZONE 数据类型返回当前时间戳的值。

支持的 Oracle/PLSQL 版本:

  1. 甲骨文 12c
  2. 甲骨文 11g
  3. 甲骨文 10g
  4. 甲骨文 9i
  5. 甲骨文 8i

示例 1:使用 CURRENT_TIMESTAMP函数显示会话时区中的当前时间戳。

ALTER SESSION SET NLS_DATE_FORMAT = 'DD-MON-YYYY HH24:MI:SS';

SELECT
  CURRENT_TIMESTAMP
FROM
  dual; 

输出:

Session altered.

CURRENT_TIMESTAMP
22-OCT-19 07.28.32.374935 AM +00:00 

示例 2:使用 CURRENT_TIMESTAMP函数使用更改的会话时区显示当前时间戳。

ALTER SESSION SET TIME_ZONE = '-10:00';

SELECT
  CURRENT_TIMESTAMP
FROM
  dual; 

输出:

Session altered.

CURRENT_TIMESTAMP
21-OCT-19 09.31.40.273270 PM -10:00 

新的日期和时间按预期调整了约-10小时。

优势:
CURRENT_TIMESTAMP函数返回 TIMESTAMP WITH TIME ZONE 的值,而 CURRENT_DATE函数返回没有时区数据的 DATE 值。