V MariaDB, CHAR()
je vestavěná řetězcová funkce, která vrací znaky na základě jejich kódových hodnot.
CHAR()
přijímá jedno nebo více celých čísel. Poté vrátí řetězec sestávající ze znaků daných hodnotami kódu těchto celých čísel.
Syntaxe
Syntaxe vypadá takto:
CHAR(N,... [USING charset_name])
Kde N,...
je jedna nebo více hodnot, které CHAR()
interpretuje jako int
hodnoty.
Volitelné USING
argument lze použít k určení znakové sady, která se má použít.
Příklad
Zde je jednoduchý příklad k demonstraci:
SELECT CHAR(77);
Výsledek:
+----------+ | CHAR(77) | +----------+ | M | +----------+
Zde jsem uvedl pouze jedno celé číslo, a tedy CHAR()
vrátil pouze jeden znak. V tomto případě je to celé číslo 77
mapuje na velké písmeno M
.
Více znaků
Můžeme poskytnout více celých čísel oddělených čárkou, což povede k vrácení více znaků.
Příklad:
SELECT CHAR(77, 97, 114, 105, 97);
Výsledek:
+----------------------------+ | CHAR(77, 97, 114, 105, 97) | +----------------------------+ | Maria | +----------------------------+
Položka USING
Argument
Můžeme použít volitelný USING
argument k určení znakové sady, která se má použít.
Příklad:
SELECT CHAR(49833 USING utf8);
Výsledek:
+------------------------+ | CHAR(49833 USING utf8) | +------------------------+ | © | +------------------------+
Rozlišovat malá a velká písmena
Velká písmena mají jinou hodnotu než jejich malé ekvivalenty. Proto je pro každý vyžadováno jiné celé číslo.
Příklad:
SELECT
CHAR(72),
CHAR(104);
Výsledek:
+----------+-----------+ | CHAR(72) | CHAR(104) | +----------+-----------+ | H | h | +----------+-----------+
Nulové hodnoty
null
argumenty jsou přeskočeny.
Příklad:
SELECT CHAR(77, null, 77);
Výsledek:
+--------------------+ | CHAR(77, null, 77) | +--------------------+ | MM | +--------------------+
Pokud je null
je jediný argument, pak se nic nevrací:
SELECT CHAR(null);
Výsledek:
+------------+ | CHAR(null) | +------------+ | | +------------+