V Oracle, CHR()
funkce vrací znak na základě hodnot kódu poskytnutých jako argument.
Přesněji řečeno, vrací znak s binárním ekvivalentem jeho argumentu jako VARCHAR2
hodnotu buď ve znakové sadě databáze, nebo, pokud zadáte USING
NCHAR_CS
, národní znaková sada.
Syntaxe
Syntaxe vypadá takto:
CHR(n [ USING NCHAR_CS ])
Kde n
je NUMBER
hodnotu nebo jakoukoli hodnotu, kterou lze implicitně převést na NUMBER
.
USING
NCHAR_CS
argument je volitelný argument, který vám umožňuje určit národní znakovou sadu.
Příklad
Zde je jednoduchý příklad k demonstraci:
SELECT CHR(65)
FROM DUAL;
Výsledek:
CHR(65) __________ A
Zde jsem uvedl číslo a CHR()
vrátil odpovídající znak. V tomto případě je to celé číslo 65
mapuje na velké písmeno A
.
Rozlišovat malá a velká písmena
Zde je příklad, který odlišuje velké písmeno od jeho malého protějšku:
SELECT
CHR(72),
CHR(104)
FROM DUAL;
Výsledek:
CHR(72) CHR(104) __________ ___________ H h
Vrátí řetězec s více znaky
K vytvoření víceznakového řetězce můžeme zřetězit více CHR()
funkce:
Příklad:
SELECT CHR(65) || CHR(77)
FROM DUAL;
Výsledek:
CHR(65)||CHR(77) ___________________ AM
NCHAR_CS
Argument
Zde je příklad předání (nepovinného) druhého argumentu:
SELECT CHR (257 USING NCHAR_CS)
FROM DUAL;
Výsledek:
CHR(257USINGNCHAR_CS) ________________________ ā
Je to stejné jako při použití NCHR()
funkce.
Nulové hodnoty
Předávání null
vrátí null
:
SET NULL 'null';
SELECT CHR(null)
FROM DUAL;
Výsledek:
CHR(NULL) ____________ null
Ve výchozím nastavení vrátí SQLcl a SQL*Plus prázdné místo vždy, když null
dochází v důsledku SQL SELECT
prohlášení.
Můžete však použít SET NULL
určit jiný řetězec, který má být vrácen. Zde jsem uvedl, že řetězec null
by měl být vrácen.
Nesprávný počet argumentů
Volání CHR()
bez předání jakýchkoli argumentů vrátí chybu:
SELECT CHR()
FROM DUAL;
Výsledek:
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:
A předání nesprávného počtu argumentů má za následek chybu:
SELECT CHR(1, 2, 3)
FROM DUAL;
Výsledek:
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: