V MariaDB, TRIM_ORACLE()
je synonymem pro verzi TRIM()
v režimu Oracle funkce.
TRIM_ORACLE()
je k dispozici ve všech režimech, takže se nemusíte přepínat do režimu Oracle, což je to, co byste museli udělat, pokud chcete TRIM()
funkce, aby se chovala jako TRIM()
Oracle funkce.
Rozdíl je v tom, jak každá funkce zachází s prázdnými řetězci. Oracle vrátí null
zatímco MariaDB vrací prázdný řetězec.
Syntaxe
Syntaxe vypadá takto:
TRIM_ORACLE([remstr FROM] str)
Nebo:
TRIM_ORACLE([{BOTH | LEADING | TRAILING} [remstr] FROM] str)
Kde str
je řetězec, ze kterého se mají odstranit případné koncové mezery, a remstr
je řetězec k odstranění.
Pokud remstr
není k dispozici, pak TRIM_ORACLE()
odstraní mezery.
Příklad
Zde je základní příklad:
SELECT
' Volcanic eruption ' AS "Untrimmed",
TRIM_ORACLE(' Volcanic eruption ') AS "Trimmed";
Výsledek:
+-------------------------+-------------------+ | Untrimmed | Trimmed | +-------------------------+-------------------+ | Volcanic eruption | Volcanic eruption | +-------------------------+-------------------+
Tento příklad používá nejzákladnější syntaxi. Jediné, co jsme udělali, bylo poskytnout provázek k oříznutí. Nespecifikovali jsme, které znaky se mají oříznout, a tak byly všechny mezery oříznuty z obou stran řetězce.
Můžeme také vidět, že mezera v řetězci zůstává nedotčena.
Viz Jak TRIM()
Funguje v MariaDB pro příklady použití dalších možností, jako je zadání řetězce, který se má oříznout, a která strana řetězce se má oříznout. TRIM_ORACLE()
funguje v takových případech úplně stejně, možná s výjimkou případů, kdy je řetězec, který má být oříznut, prázdný řetězec.
Prázdné řetězce
Předání prázdného řetězce do TRIM_ORACLE()
výsledkem je null
se vrací.
SELECT TRIM_ORACLE('');
Výsledek:
+-----------------+ | TRIM_ORACLE('') | +-----------------+ | NULL | +-----------------+
To odráží způsob TRIM()
společnosti Oracle funkce se zabývá prázdnými řetězci.
V MariaDB, TRIM()
funkce vrací pouze null
když používáte režim Oracle. Když není v režimu Oracle, vrací prázdný řetězec.
Nulový argument
Pokud je argument null
, výsledkem je null
:
SELECT TRIM_ORACLE(null);
Výsledek:
+-------------------+ | TRIM_ORACLE(null) | +-------------------+ | NULL | +-------------------+
Chybí argument
Volání TRIM_ORACLE()
bez argumentu vede k chybě:
SELECT TRIM_ORACLE();
Výsledek:
ERROR 1064 (42000): You have an error in your SQL syntax; check the manual that corresponds to your MariaDB server version for the right syntax to use near ')' at line 1