V MariaDB, SPACE()
je vestavěná řetězcová funkce, která vrací daný počet mezer.
Při volání funkce zadáte počet mezer, které se mají vrátit.
Syntaxe
Syntaxe vypadá takto:
SPACE(N)
Kde N
je počet mezer, které se mají vrátit.
Příklad
Zde je základní příklad:
SELECT
SPACE(5) AS "5",
SPACE(10) AS "10",
SPACE(20) AS "20";
Výsledek:
+-------+------------+----------------------+ | 5 | 10 | 20 | +-------+------------+----------------------+ | | | | +-------+------------+----------------------+
V tomto příkladu jsem nazval SPACE()
vícekrát, každý s jinou hodnotou. Udělal jsem to proto, abyste viděli účinek SPACE()
funkce s každou hodnotou. Můžeme vidět, že šířka sloupců se zvětšuje, jak je aplikováno více mezer.
Zde je další příklad, kde používám CONCAT()
funkce pro spojení dvou slov při použití SPACE()
pro přidání mezery mezi nimi:
SELECT CONCAT('Stay', SPACE(10), 'Away!');
Výsledek:
+------------------------------------+ | CONCAT('Stay', SPACE(10), 'Away!') | +------------------------------------+ | Stay Away! | +------------------------------------+
Nulové mezery
Předání argumentu 0
(nula) znamená, že není mezera:
SELECT CONCAT('Come', SPACE(0), 'Here!');
Výsledek:
+-----------------------------------+ | CONCAT('Come', SPACE(0), 'Here!') | +-----------------------------------+ | ComeHere! | +-----------------------------------+
Záporné mezery
Předání záporného argumentu má za následek bez mezery:
SELECT CONCAT('Come', SPACE(-5), 'Here!');
Výsledek:
+------------------------------------+ | CONCAT('Come', SPACE(-5), 'Here!') | +------------------------------------+ | ComeHere! | +------------------------------------+
Nulové argumenty
Předávání null
vrátí null
:
SELECT SPACE(null);
Výsledek:
+-------------+ | SPACE(null) | +-------------+ | NULL | +-------------+
To také naruší všechny operace zřetězení, které byste mohli provádět:
SELECT CONCAT('Come', SPACE(null), 'Here!');
Výsledek:
+--------------------------------------+ | CONCAT('Come', SPACE(null), 'Here!') | +--------------------------------------+ | NULL | +--------------------------------------+
Chybí argument
Volání SPACE()
s nesprávným počtem argumentů nebo bez předání jakýchkoli argumentů vede k chybě:
SELECT SPACE();
Výsledek:
ERROR 1582 (42000): Incorrect parameter count in the call to native function 'SPACE'