W Oracle CHR() funkcja zwraca znak na podstawie wartości kodu podanych jako argument.
Dokładniej, zwraca znak mający binarny odpowiednik swojego argumentu jako VARCHAR2 wartość w zestawie znaków bazy danych lub, jeśli określisz USING NCHAR_CS , zestaw znaków narodowych.
Składnia
Składnia wygląda tak:
CHR(n [ USING NCHAR_CS ])
Gdzie n to NUMBER wartość lub dowolna wartość, którą można niejawnie przekonwertować na NUMBER .
USING NCHAR_CS argument jest opcjonalnym argumentem, który pozwala określić narodowy zestaw znaków.
Przykład
Oto prosty przykład do zademonstrowania:
SELECT CHR(65)
FROM DUAL; Wynik:
CHR(65) __________ A
Tutaj podałem numer i CHR() zwrócił odpowiedni znak. W tym przypadku liczba całkowita 65 mapuje na wielką literę A .
Wrażliwość na wielkość liter
Oto przykład, który odróżnia wielką literę od jej małego odpowiednika:
SELECT
CHR(72),
CHR(104)
FROM DUAL; Wynik:
Zwróć ciąg wielu znaków
Aby utworzyć ciąg wieloznakowy, możemy połączyć wiele CHR() funkcje:
Przykład:
SELECT CHR(65) || CHR(77)
FROM DUAL; Wynik:
CHR(65)||CHR(77) ___________________ AM
NCHAR_CS Argument
Oto przykład przekazywania (opcjonalnego) drugiego argumentu:
SELECT CHR (257 USING NCHAR_CS)
FROM DUAL; Wynik:
CHR(257USINGNCHAR_CS) ________________________ ā
To to samo, co użycie NCHR() funkcja.
Wartości puste
Przekazywanie null zwraca null :
SET NULL 'null';
SELECT CHR(null)
FROM DUAL; Wynik:
CHR(NULL) ____________ null
Domyślnie SQLcl i SQL*Plus zwracają spację, gdy null występuje w wyniku polecenia SQL SELECT oświadczenie.
Możesz jednak użyć SET NULL aby określić inny ciąg do zwrócenia. Tutaj określiłem, że ciąg null należy zwrócić.
Nieprawidłowa liczba argumentów
Wywołanie CHR() bez przekazywania żadnych argumentów zwraca błąd:
SELECT CHR()
FROM DUAL; Wynik:
Błąd zaczynający się od wiersza:1 w poleceniu -SELECT CHR()FROM DUALError w wierszu polecenia:1 Kolumna:8Raport o błędzie -SQL Błąd:ORA-00938:za mało argumentów dla funkcji00938. 00000 - "za mało argumentów dla funkcji"*Przyczyna:*Działanie:
A przekazanie niewłaściwej liczby argumentów skutkuje błędem:
SELECT CHR(1, 2, 3)
FROM DUAL; Wynik:
Błąd zaczynający się od wiersza:1 w poleceniu -SELECT CHR(1, 2, 3)FROM DUALError w wierszu polecenia:1 Kolumna:8Raport o błędzie -SQL Błąd:ORA-00909:nieprawidłowa liczba argumentów00909. 00000 - "nieprawidłowa liczba argumentów"*Przyczyna:*Działanie: