📜  SYSDATE函数在 PL/SQL 中的工作原理

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

SYSDATE函数在 PL/SQL 中的工作原理

PLSQL SYSDATE函数将返回数据库的当前系统日期和时间。 SYSDATE函数没有任何参数或参数。 SYSDATE函数返回一个日期值。请注意,SYSDATE函数将日期和时间返回为“YYYY-MM-DD HH:MM:SS”(字符串)或 YYYYMMDDHHMMSS(数字)。

句法:

SYSDATE

示例 1:

SELECT Sysdate AS System_date
FROM Dual

解释:
上面的示例将在数据库中显示系统的当前日期。它将从 dual 执行语法“Sysdate”,它充当虚拟表并仅以默认格式显示日期。在上述查询中,“System_date”充当别名,即该指定列的临时名称。

输出:

System_date
2019-01-05

1. 显示日期和时间 –

句法:

SELECT TO_CHAR(Sysdate, Format_Of_Date_and_Time) AS Alias_Name
FROM Dual 

Format_Of_Date_and_Time:
DD-MM-YYYY HH:MM:SS
MM-DD-YYYY HH:MM:SS
YYYY-MM-DD HH:MM:SS
DD-MON-YYYY HH:MM:SS
MON-DD-YY HH:MM:SS
DD-MM-YYYY HH24:MM:SS (For 24hr time Format) 

示例 2:

SELECT TO_CHAR (Sysdate, 'DD-MM-YYYY HH24:MI:SS') AS System_date_time
FROM Dual

输出:

System_date_time
05-01-2019 09:45:51

示例 3:

SELECT TO_CHAR (Sysdate, 'YYYY-MON-DD HH24:MI:SS') AS System_date_time
FROM Dual

输出:

System_date_time
2019-JAN-05 09:45:51

解释:
在上面的示例中,它将以指定格式在数据库中显示日期和时间。 TO_CHAR()函数基本上有助于将系统日期转换为指定格式的日期和时间。此处“System_date_time”还充当别名,并在定义的列中显示日期和时间。

2.使用级别显示当前日期的连续日期 -

句法:

SELECT Sysdate+Level-1
FROM Dual
CONNECT BY Level<=n 

其中 n 是连续天数。

示例 4:

SELECT Sysdate+Level-1 AS Consecutive_dates
FROM Dual
CONNECT BY Level<=5

解释:
为了显示连续的日期数,我们可以使用SYSDATELEVEL 。 Level 可以用作具有子节点的层次结构,例如 1 作为根,然后 2 作为子节点,然后是 3。 Level 的初始值为 1,这里 Sysdate 与 Level 相加并充当多级结构,然后有助于以连续方式显示日期.

输出:

Consecutive_dates
2019-01-05
2019-01-06
2019-01-07
2019-01-08
2019-01-09