📜  PLSQL | CURRENT_DATE函数

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

PLSQL | CURRENT_DATE函数

PLSQL CURRENT_DATE函数用于返回会话时区中的当前日期。使用的时区是由 ALTER SESSION 命令设置的当前 SQL 会话的时区。 PLSQL CURRENT_DATE函数使用其数据类型为 DATE 的公历中的值。
CURRENT_DATE函数不接受任何参数。

句法:

CURRENT_DATE

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

返回值:
CURRENT_DATE函数返回一个日期值。

支持的 Oracle/PLSQL 版本:

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

示例 1:使用 SESSIONTIMEZONE函数查找会话时区。

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

SELECT
  SESSIONTIMEZONE
FROM
  DUAL; 

输出:

Session altered.

SESSIONTIMEZONE
+00:00 

示例 2:使用 CURRENT_DATE函数获取会话时区中的当前日期。

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

SELECT
  SESSIONTIMEZONE
FROM
  DUAL;
  
SELECT
  CURRENT_DATE
FROM
  DUAL; 

输出:

Session altered.

SESSIONTIMEZONE
+00:00

CURRENT_DATE
22-OCT-2019 06:53:58 

示例 3:在更改会话时区后使用 CURRENT_DATE函数获取当前日期。

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

SELECT
  SESSIONTIMEZONE
FROM
  DUAL;
 
ALTER SESSION SET TIME_ZONE = '-02:00';
  
SELECT
  CURRENT_DATE
FROM
  DUAL; 

输出:

Session altered.

SESSIONTIMEZONE
+00:00

Session altered.

CURRENT_DATE
22-OCT-2019 05:05:36 

新的当前日期按预期调整了约-2小时。