W MariaDB, RTRIM()
jest wbudowaną funkcją ciągów znaków, która zwraca ciąg z usuniętymi znakami spacji końcowych.
Składnia
Składnia wygląda tak:
RTRIM(str)
Gdzie str
jest ciągiem, z którego usuwane są wszystkie końcowe spacje.
Przykład
Oto podstawowy przykład:
SELECT
' Solar System ' AS "Untrimmed",
RTRIM(' Solar System ') AS "Trimmed";
Wynik:
+--------------------+-----------------+ | Untrimmed | Trimmed | +--------------------+-----------------+ | Solar System | Solar System | +--------------------+-----------------+
Tutaj pierwsza kolumna nie jest przycięta, a druga została przycięta za pomocą RTRIM()
.
Widzimy, że obcięta jest tylko prawa część sznurka. Lewa część pozostaje nienaruszona.
Możemy również zobaczyć, że spacja w ciągu pozostaje nienaruszona.
Argument zerowy
Jeśli argumentem jest null
, wynik to null
:
SELECT RTRIM(null);
Wynik:
+-------------+ | RTRIM(null) | +-------------+ | NULL | +-------------+
Tryb Oracle
Kiedy nie działa w trybie Oracle, jeśli wynik jest pusty (tj. ma długość równą zero), wynikiem jest pusty ciąg.
Jednak podczas pracy w trybie Oracle wynik to null
.
Tutaj jest w trybie domyślnym (tzn. nie w trybie Oracle):
SELECT RTRIM('');
Wynik:
+-----------+ | RTRIM('') | +-----------+ | | +-----------+
Przejdźmy teraz do trybu Oracle:
SET SQL_MODE=ORACLE;
I uruchom kod ponownie:
SELECT RTRIM('');
Wynik:
+-----------+ | RTRIM('') | +-----------+ | NULL | +-----------+
Istnieje również alternatywny sposób na zrobienie tego. Zamiast przełączać się w tryb Oracle, możesz użyć RTRIM_ORACLE()
jako nazwę funkcji.
Wróćmy do trybu domyślnego:
SET SQL_MODE=DEFAULT;
A teraz uruchom RTRIM_ORACLE()
:
SELECT RTRIM_ORACLE('');
Wynik:
+------------------+ | RTRIM_ORACLE('') | +------------------+ | NULL | +------------------+
Brakujący argument
Wywołanie RTRIM()
bez argumentu powoduje błąd:
SELECT RTRIM();
Wynik:
ERROR 1582 (42000): Incorrect parameter count in the call to native function 'RTRIM'