Bei der Überprüfung müssen wir oft das Datumsformat ändern. Hier sind einige Möglichkeiten, wie Sie das Datumsformat in der Oracle-Datenbank ändern können
Oracle Standard-Datumsformat
Das standardmäßige Datumsformat in Oracle wird durch den Wert des Parameters NLS_DATE_FORMAT gesteuert.
Die folgende Abfrage kann verwendet werden, um den aktuellen Wert des Parameters NLS_DATE_FORMAT zu finden
SELECT value FROM V$NLS_PARAMETERS WHERE parameter = 'NLS_DATE_FORMAT';
So ändern Sie das Format für die gesamte Sitzung
Wir können den Parameter in der Sitzung ändern und das gewünschte Format für das Oracle-Datum auswählen. Hier ist die SQL, die in der Sitzung verwendet werden kann
ALTER SESSION SET NLS_DATE_FORMAT = '[date_format]'; MM Numeric month (e.g., 07) MON Abbreviated month name (e.g., JUL) MONTH Full month name (e.g., JULY) DD Day of month (e.g., 24) DY Abbreviated name of day (e.g., FRI) YYYY 4-digit year (e.g., 1998) YY Last 2 digits of the year (e.g., 98) RR Like YY, but the two digits are ``rounded'' to a year in the range 1950 to 2049. Thus, 06 is considered 2006 instead of 1906 AM (or PM) Meridian indicator HH Hour of day (1-12) HH24 Hour of day (0-23) MI Minute (0-59) SS Second (0-59)
Beispiel
alter session set nls_date_format = 'dd-mon-yyyy hh24:mi:ss';
Unabhängig davon, welche Abfrage Sie nun ausführen, wird die Datumsspalte gemäß dem obigen Datumsformat formatiert
Example select sysdate from dual;
So ändern Sie das Datumsformat mit der to_char-Funktion
Möglicherweise möchten wir ein anderes Datumsformat für die verschiedenen SQL-Abfragen haben. In diesem Fall können Sie planen, die Oracle-Einzelzeilenfunktion to_char zu verwenden und die Oracle-Datenspalte in ein beliebiges Format konvertieren
Example select to_char(sysdate, 'dd-mon-yyyy hh24:mi:ss') from dual; select to_char(sysdate, 'dd-mon-yyyy') from dual;
So ändern Sie das Datumsformat mit der to_date-Funktion
Möglicherweise möchten wir die Zeichenfolgen zum Vergleich in das Datumsformat ändern, um sie als Datum in der Oracle-Tabelle zu speichern. In diesem Fall können Sie die to_date-Funktion von Oracle verwenden
Example select to_date('11-JAN-2019 13:12:12', 'dd-mon-yyyy hh24:mi:ss') from dual; select to_date( '11-JAN-2019', 'dd-mon-yyyy') from dual;
Wichtig zu beachten:Der String wird in ein Datum umgewandelt und das Datum wird im Standard-Datumsformat in der Select-Anweisung zurückgegeben. Wenn Sie die to_date-Funktion zum Speichern von Zeichenfolgen als Datum in der Datumsspalte verwenden, wird dies nur als Datum gespeichert. Wenn Sie nun diese Spalte auswählen, wird das Datum im Oracle-Standarddatumsformat angezeigt, das in der Sitzung festgelegt wurde.
So formatieren Sie das Datum, um Tag, Woche, Monate usw. anzuzeigen
Day of Week SQL> select to_char(sysdate,'D') col from dual; col ---- 2 Name of WeekDay SQL> select to_char(sysdate,'DAY') col from dual; col --- MONDAY Abbreviated name of day SQL> select to_char(sysdate,'DY') from dual; col ---- MON Day of Month SQL> select to_char(sysdate,'DD') from dual; col ---- 30 Abbreviated name of month SQL> select to_char(sysdate,'MON') from dual; col ---- NOV Name of Month SQL> select to_char(sysdate,'MONTH') from dual; col ----- NOVEMBER Day of Year SQL> select to_char(sysdate,'DDD') from dual; col ---- 334 Week of the year SQL> select to_char(sysdate,'IW') from dual; col ---- 05 Week of Month SQL> select to_char(sysdate,'W') from dual; col ----- 5 Month in Numbers SQL> select to_char(sysdate,'MM') from dual; col ---- 11 Year in Numbers SQL> select to_char(sysdate,'YYYY') from dual; col ---- 2019 Year in words SQL> select to_char(sysdate,'YEAR') from dual; col --- TWENTY NINE Hour in 0-12 format SQL> select to_char(sysdate,'HH') from dual' col ---- 08 Hour in 0-24 format SQL> select to_char(sysdate,'HH24') from dual; col --- 12 Minutes SQL> select to_char(sysdate,'MI') from dual; col ---- 45 Seconds SQL> select to_char(sysdate,'SS') from dual; col ---- 45
Ich hoffe, Ihnen gefallen diese einfachen Schritte zum Ändern des Datumsformats in der Oracle-Datenbank. Es kann viele Beispiele geben, wo dies verwendet werden kann. Ich habe nur ein paar einfache Beispiele gegeben, um die Funktionalität zu demonstrieren
Auch lesen
Orakel-Datumsfunktionen: Dieser Beitrag behandelt Orakel-Datumsfunktionen, Orakel-Datumsunterschied in Jahren, Orakel-Datumsunterschied in Tagen, Orakel-Datumsunterschied in Monaten.
NULLIF-Funktion in Oracle:NULLIF-Funktion in Oracle vergleicht zwei Werte und Null zurückgeben, wenn die Werte gleich sind, andernfalls den ersten Wert zurückgeben. Sie können den wörtlichen NULL-Wert nicht in Werten angeben oracle database.Update kann auf mehrere Arten ausgeführt werden
Coalesce-Funktion in Oracle :Die Coalesce-Funktion in Oracle gibt den ersten Ausdruck zurück, wenn er nicht null ist, andernfalls wird der Rest des Ausdrucks zusammengeführt.
How to Metadaten einer Tabelle in Oracle abrufen :Sehen Sie sich an, wie Sie Tabellendefinitionen in Oracle abrufen, Indexdefinitionen in Oracle anzeigen, ddl einer materialisierten Ansicht in Oracle abrufen, Abfrage einer Ansicht in Oracle abrufen
http://infolab.stanford .edu/~ullman/fcdb/oracle/or-time.html