Oracle
 sql >> Datenbank >  >> RDS >> Oracle

SYSDATE-Funktion in Oracle

In der Oracle-Datenbank das SYSDATE Die Funktion gibt das aktuelle Datum und die Uhrzeit zurück, die für das Betriebssystem eingestellt sind, auf dem sich der Datenbankserver befindet.

Der zurückgegebene Wert ist vom Typ DATE .

Syntax

Die Syntax lautet wie folgt:

SYSDATE

Es sind also keine Argumente erforderlich (oder akzeptiert) und es gibt keine Klammern.

Beispiel

Hier ist ein Beispiel:

SELECT SYSDATE
FROM DUAL;

Ergebnis:

06/AUG/21

Dieses Beispiel zeigt das Datum basierend auf dem Wert von NLS_DATE_FORMAT meines Systems an -Parameter (derzeit DD/MON/RR ). Wir können diesen Parameter ändern oder eine Funktion wie TO_CHAR() verwenden um das Ergebnis in einem anderen Format zurückzugeben.

Beispiel:

SELECT TO_CHAR(SYSDATE, 'YYYY-MM-DD')
FROM DUAL;

Ergebnis:

2021-08-06

Aufruf von SYSDATE mit Klammern

Wie bereits erwähnt, das SYSDATE Funktion wird ohne Klammern aufgerufen.

Folgendes passiert, wenn wir es mit Klammern aufrufen:

SELECT SYSDATE()
FROM DUAL;

Ergebnis:

Error starting at line : 1 in command -
SELECT SYSDATE()
FROM DUAL
Error at Command Line : 1 Column : 15
Error report -
SQL Error: ORA-00923: FROM keyword not found where expected
00923. 00000 -  "FROM keyword not found where expected"
*Cause:    
*Action:

Korrektur des SYSDATE Rückgabewert

Das FIXED_DATE Der Initialisierungsparameter ermöglicht es Ihnen, ein konstantes Datum und eine konstante Uhrzeit auf SYSDATE festzulegen wird immer anstelle des aktuellen Datums und der aktuellen Uhrzeit zurückgegeben.

Dies kann in Testsituationen hilfreich sein, wenn Sie dieselben Eingabedaten benötigen, um konsistent dasselbe Ergebnis zu erzielen.

Siehe Oracle-Dokumentation für FIXED_DATE und auch Initialisierungsparameter im Allgemeinen für weitere Informationen.