In Oracle die CHR() Die Funktion gibt ein Zeichen basierend auf den als Argument bereitgestellten Codewerten zurück.
Genauer gesagt gibt es das Zeichen mit dem binären Äquivalent zu seinem Argument als VARCHAR2 zurück Wert entweder im Zeichensatz der Datenbank oder, wenn Sie USING angeben NCHAR_CS , der nationale Zeichensatz.
Syntax
Die Syntax lautet wie folgt:
CHR(n [ USING NCHAR_CS ])
Wobei n ist eine NUMBER value oder irgendein Wert, der implizit in NUMBER umgewandelt werden kann .
Der USING NCHAR_CS Argument ist ein optionales Argument, mit dem Sie den nationalen Zeichensatz angeben können.
Beispiel
Hier ist ein einfaches Beispiel zur Veranschaulichung:
SELECT CHR(65)
FROM DUAL; Ergebnis:
CHR(65) __________ A
Hier habe ich eine Zahl und CHR() angegeben gab das entsprechende Zeichen zurück. In diesem Fall die ganze Zahl 65 entspricht dem Großbuchstaben A .
Groß-/Kleinschreibung
Hier ist ein Beispiel, das einen Großbuchstaben von seinem Kleinbuchstaben unterscheidet:
SELECT
CHR(72),
CHR(104)
FROM DUAL; Ergebnis:
CHR(72) CHR(104) __________ ___________ H h
Gib eine Zeichenfolge mit mehreren Zeichen zurück
Um eine Zeichenfolge mit mehreren Zeichen zu erzeugen, können wir mehrere CHR() verketten Funktionen:
Beispiel:
SELECT CHR(65) || CHR(77)
FROM DUAL; Ergebnis:
CHR(65)||CHR(77) ___________________ AM
Der NCHAR_CS Argument
Hier ist ein Beispiel für die Übergabe des (optionalen) zweiten Arguments:
SELECT CHR (257 USING NCHAR_CS)
FROM DUAL; Ergebnis:
CHR(257USINGNCHAR_CS) ________________________ ā
Dies entspricht der Verwendung von NCHR() Funktion.
Nullwerte
Übergabe von null gibt null zurück :
SET NULL 'null';
SELECT CHR(null)
FROM DUAL; Ergebnis:
CHR(NULL) ____________ null
Standardmäßig geben SQLcl und SQL*Plus ein Leerzeichen zurück, wenn null tritt als Ergebnis eines SQL SELECT auf Erklärung.
Sie können jedoch SET NULL verwenden um eine andere Zeichenfolge anzugeben, die zurückgegeben werden soll. Hier habe ich angegeben, dass der String null zurückgegeben werden soll.
Falsche Argumentanzahl
Aufruf von CHR() ohne Übergabe von Argumenten gibt einen Fehler zurück:
SELECT CHR()
FROM DUAL; Ergebnis:
Error starting at line : 1 in command - SELECT CHR() FROM DUAL Error at Command Line : 1 Column : 8 Error report - SQL Error: ORA-00938: not enough arguments for function 00938. 00000 - "not enough arguments for function" *Cause: *Action:
Und das Übergeben der falschen Anzahl von Argumenten führt zu einem Fehler:
SELECT CHR(1, 2, 3)
FROM DUAL; Ergebnis:
Error starting at line : 1 in command - SELECT CHR(1, 2, 3) FROM DUAL Error at Command Line : 1 Column : 8 Error report - SQL Error: ORA-00909: invalid number of arguments 00909. 00000 - "invalid number of arguments" *Cause: *Action: