- Kategorien:
Zeichenfolgen- und Binärfunktionen (Allgemein)
TRIM¶
Entfernt führende und nachstehende Zeichen aus einer Zeichenfolge.
Bemerkung
Um Zeichen in einer Zeichenfolge zu entfernen, können Sie die Funktion REPLACE verwenden.
- Siehe auch::
Syntax¶
TRIM( <expr> [, <characters> ] )
Argumente¶
expr
Eine Zeichenfolge, die gekürzt werden soll.
characters
Ein oder mehrere Zeichen, die links und rechts von
expr
entfernt werden sollen.Der Standardwert ist
' '
(ein einzelnes Leerzeichen). Wenn keine Zeichen angegeben werden, werden nur Leerzeichen entfernt.
Rückgabewerte¶
Diese Funktion gibt einen Wert vom Datentyp VARCHAR oder NULL zurück. Wenn eines der beiden Argumente NULL ist, wird NULL zurückgegeben.
Nutzungshinweise¶
Sie können die Zeichen in
characters
in beliebiger Reihenfolge angeben.Bei Angabe von
' '
incharacters
werden keine anderen Leerzeichen (wie z. B. Tabulatorzeichen oder Zeilenendezeichen) entfernt. Geben Sie diese Zeichen explizit an, um sie zu entfernen.
Um Leerzeichen zu entfernen, müssen die Zeichen explizit in das Argument aufgenommen werden. Beispielsweise entfernt
' $.'
alle führenden und nachstehenden Leerzeichen, Dollarzeichen und Punkte aus der Eingabezeichenfolge.
Sortierungsdetails¶
Sortierung wird unterstützt, wenn das optionale zweite Argument weggelassen wird oder wenn es nur Leerzeichen enthält.
Die Sortierungsspezifikation des zurückgegebenen Werts entspricht der Sortierungsspezifikation des ersten Arguments.
Beispiele¶
Entfernen führender und nachstehender *
- und -
-Zeichen aus einer Zeichenfolge:
SELECT '*-*ABC-*-' AS original,
TRIM('*-*ABC-*-', '*-') AS trimmed;
+-----------+---------+
| ORIGINAL | TRIMMED |
|-----------+---------|
| *-*ABC-*- | ABC |
+-----------+---------+
Eine nachstehende neue Zeile aus einer Zeichenfolge entfernen. In diesem Beispiel wird die Funktion CONCAT verwendet, um die Zeichenfolgen in die Zeichen >
und <
einzuschließen, um die Visualisierung der Leerzeichen zu erleichtern:
SELECT CONCAT('>', CONCAT('ABC\n', '<')) AS original,
CONCAT('>', CONCAT(TRIM('ABC\n', '\n'), '<')) AS trimmed;
+----------+---------+
| ORIGINAL | TRIMMED |
|----------+---------|
| >ABC | >ABC< |
| < | |
+----------+---------+
Entfernen führender und nachstehender Leerzeichen aus einer Zeichenfolge. In diesem Beispiel werden die Zeichenfolgen von >
- und <
-Zeichen eingeschlossen, um die Visualisierung der Leerzeichen zu erleichtern: Es zeigt auch, dass die Funktion NULL für die Eingabe von NULL zurückgibt.
CREATE OR REPLACE TABLE test_trim_function(column1 VARCHAR);
INSERT INTO test_trim_function VALUES (' Leading Spaces'), ('Trailing Spaces '), (NULL);
SELECT CONCAT('>', CONCAT(column1, '<')) AS original_values,
CONCAT('>', CONCAT(TRIM(column1), '<')) AS trimmed_values
FROM test_trim_function;
+---------------------+-------------------+
| ORIGINAL_VALUES | TRIMMED_VALUES |
|---------------------+-------------------|
| > Leading Spaces< | >Leading Spaces< |
| >Trailing Spaces < | >Trailing Spaces< |
| NULL | NULL |
+---------------------+-------------------+