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

So erhalten Sie das aktuelle Datum in Oracle

Problem:

Sie möchten das aktuelle Datum (ohne Uhrzeit) in Oracle abrufen.

Lösung 1 (wenn Sie die Nullen als Uhrzeit nicht stören):

SELECT
  TRUNC(CURRENT_DATE) AS current_date
FROM dual;

Wenn Sie diese Abfrage beispielsweise am 16. Juni 2021 ausführen würden, würde die Ergebnistabelle so aussehen:

aktuelles_datum
2021-06-16T00:00:00Z

Diskussion:

Oracle hat keinen Datentyp, der nur das Datum ohne die Uhrzeit speichert. Aber wenn Sie die Nullen anstelle der Uhrzeit nicht stören, können Sie einfach ein Datum in einem DATE speichern Datentyp (der sowohl das Datum als auch die Uhrzeit in Oracle speichert). Um das aktuelle Datum und die Uhrzeit als DATE zu erhalten Wert, können Sie einfach CURRENT_DATE verwenden . Um die Zeit loszuwerden (und stattdessen Nullen zu haben), müssen Sie das Datum abschneiden:

SELECT
  TRUNC(CURRENT_DATE) AS current_date
FROM dual;

Lösung 2 (wenn Sie nur das Datum und keine Nullen anstelle der Uhrzeit wünschen):

SELECT
  TO_CHAR(CURRENT_DATE, 'yyyy-MM-dd') AS current_date
FROM dual;

Wenn Sie diese Abfrage beispielsweise am 16. Juni 2021 ausführen würden, würde die Ergebnistabelle so aussehen:

aktuelles_datum
2021-06-16

Diskussion:

Um einen Text von VARCHAR2 zu erhalten Typ, der ein Datum speichert, können Sie TO_CHAR() verwenden Funktion in Oracle. Als erstes Argument müssen Sie den zu konvertierenden Datums-/Zeitstempel und als zweites Argument das Format angeben, in dem Sie das Datum speichern möchten.

Da Sie das aktuelle Datum möchten, ist das erste Argument CURRENT_DATE . Das zweite Argument ist Ihre Wahl. Beispiel:'yyyy-MM-dd' steht für "Jahr-Monat-Tag", wobei der Monat eher numerisch als Text ist. Die folgende Tabelle zeigt einige Beispiel-Datumsformate und die entsprechende Ausgabe für das Datum 16. Juni 2021.

Datumsformat Ergebnis
'JJJJ-MM-TT' 2021-06-16
'JJJJ/MM/TT' 2021/06/16
'JJJJ MM TT' 2021 06 16
'TT-MON-JJJJ' 16. Juni 2021
'TT-MON-JJ' 16.-JUN-21
'MMMonat TT, JJJJ' 16. Juni 2021

Hier können Sie mehr über Datumsformate lesen.