Lassen Sie uns diskutieren, wie Sie die Funktion von Oracle to_char () und die verfügbaren Alternativen in anderen Datenbankmotoren verwenden können.
Oracle to_char () Funktion
Mit der Funktion to_char () können Sie eine Nummer oder ein DateTime -Objekt in eine Zeichenfolge in Oracle -Datenbanken konvertieren.
Die verfügbaren Syntaxen sind wie unten gezeigt:
to_char_number :: =Die Funktion nimmt eine Zahl in der ersten Syntax ein und wandelt sie in einen VARCHAR2 -Typ um. Die in diesem Fall angegebene Nummer kann die Typ -Nummer, binary_float oder binary_double sein.
Wir können ein Beispiel veranschaulichen, wie unten gezeigt:
WÄHLENDas obige Beispiel konvertiert die Nummer 1000 in eine in der FMT angegebene Zeichenfolge. Sie können Oracle -Formatierungsmodelle überprüfen, um mehr zu erfahren.
Der obige Code sollte die Ausgabe als:
Sie können auch eine Zahl in eine Zeichenfolge mit Nullen umwandeln, wie im folgenden Beispiel gezeigt:
WÄHLENDas obige sollte zurückkehren:
To_char - datetime
Die zweite Verwendung der TO_CHAR -Funktion in Oracle besteht darin, eine DateTime in eine Zeichenfolge umzuwandeln. Die Funktion übernimmt das DateTime -Objekt vom Typ Datum, Zeitstempel, Zeitstempel mit der Zeitzone usw.
Die Funktion wandelt dann den angegebenen Wert in einen VARCHAR2 -Typ um.
Wir können eine Beispiel Verwendung veranschaulichen, wie unten gezeigt:
WÄHLENDas obige Beispiel sollte den Wert aus der Sysdate-Funktion in eine Zeichenfolge umwandeln.
Die Ausgabe ist wie unten gezeigt:
Sie können andere Formatierungsoptionen angeben, wie in der folgenden Ressource gezeigt.
https: // docs.Orakel.com/cd/b19306_01/server.102/B14200/sql_elements004.HTM#I34510
Um den obigen Wert in das Langdatumformat umzuwandeln, können wir beispielsweise ausführen:
WÄHLENDer obige Code sollte zurückgeben:
SQL -Gussfunktion
Sie werden feststellen, dass andere Datenbankmotoren die Funktion der to_char nicht angeben. Wir können jedoch den Cast () von Standard SQL verwenden, um einen Wert in eine Zeichenfolge umzuwandeln.
Die Funktionssyntax ist wie gezeigt:
Cast (Ausdruck als String [format_clause [zur Zeitzonenzeit Timezone_expr]])Mit der Gussfunktion können Sie dann einen Wert in einen String -Typ konvertieren. Um beispielsweise eine Zahl in eine Zeichenfolge umzuwandeln, können wir also:
Wählen Sie Cast (100 als Varchar);Der obige Code sollte die Ganzzahl wie gezeigt in Varchar umwandeln:
varcharWenn der angegebene nicht in den Zieltyp konvertiert werden kann, gibt die Funktion einen Fehler zurück.
Ein Beispiel ist wie gezeigt:
Wählen Sie Cast ('Hi!'Als Ganzzahl);Im obigen Beispiel versuchen wir, die Zeichenfolge HI in eine Ganzzahl umzuwandeln. Leider führt dies zu einem Fehler, wie unten gezeigt:
Fehler: Ungültige Eingangssyntax für Geben Sie Ganzzahl ein: „Hi!”
NOTIZ: Die Fehlermeldung kann abhängig von Ihrer Zieldatenbank -Engine unterschiedlich sein.
Sie können auch die Gussfunktion verwenden, um ein DateTime -Objekt in eine Zeichenfolge umzuwandeln. Betrachten Sie das nachstehend gezeigte illustrierte Beispiel:
Wählen Sie Cast (jetzt () als varchar);Die obige Abfrage sollte zurückkehren:
JetztWie Sie sehen können, wandelt die Gussfunktion den Wert der Funktion now () in eine Zeichenfolge um.
Abschluss
Für diesen Artikel haben Sie gelernt, wie man die Funktion to_char () verwendet, um eine Nummer oder DateTime mit der Oracle -Datenbank -Engine in eine Zeichenfolge umzuwandeln. Wir haben auch abgedeckt, wie man mit der Funktion cast () in Standard -SQL von einem Typ zu einem anderen konvertiert wird.
Vielen Dank für das Lesen!!