- Kategorien:
Zeichenfolgen- und Binärfunktionen (Allgemein)
CONCAT_WS¶
Verkettet zwei oder mehr Zeichenfolgen bzw. verkettet zwei oder mehr Binärwerte und verwendet das erste Argument als Trennzeichen zwischen den folgenden Zeichenfolgen.
Bemerkung
Im Gegensatz zu einigen Implementierungen der CONCAT_WS-Funktion überspringt die Snowflake-CONCAT_WS nicht NULL-Werte.
- Siehe auch:
Syntax¶
CONCAT_WS( <separator> , <expression> [ , <expression> ... ] )
Argumente¶
separatorDas Trennzeichen muss die gleichen Anforderungen erfüllen wie
expression.expressionDie Eingabeausdrücke müssen entweder aus reinen Zeichenfolgen oder aus reinen Binärwerten bestehen.
Rückgabewerte¶
Die Funktion gibt einen VARCHAR- oder BINARY-Wert zurück, der die Argumente 2 bis N enthält, die durch das erste Argument getrennt sind.
Wenn eines der Argumente NULL ist, gibt die Funktion NULL zurück.
Der Datentyp des zurückgegebenen Wertes entspricht dem Datentyp des Eingabewerts.
Nutzungshinweise¶
Metadatenfunktionen wie GET_DDL akzeptieren nur Konstanten als Eingabe. Verkettete Eingaben generieren einen Fehler.
CONCAT_WS setzt Trennzeichen zwischen den Argumenten, außer nach dem letzten Argument. Wenn CONCAT_WS mit nur einem Argument nach dem Trennzeichen aufgerufen wird, wird kein Trennzeichen angehängt.
Sortierungsdetails¶
The collation specifications of all input arguments must be compatible.
The collation of the result of the function is the highest-precedence collation of the inputs.
Beispiele¶
Rufen Sie die CONCAT_WS-Funktion auf, um drei Zeichenfolgen mit einem Komma-Trennzeichen zu verketten:
SELECT CONCAT_WS(',', 'one', 'two', 'three');
+---------------------------------------+
| CONCAT_WS(',', 'ONE', 'TWO', 'THREE') |
|---------------------------------------|
| one,two,three |
+---------------------------------------+
Das folgende Beispiel zeigt, dass, die Funktion NULL zurückgibt, wenn ein Argument NULL lautet:
SELECT CONCAT_WS(',', 'one', NULL, 'two');
+------------------------------------+
| CONCAT_WS(',', 'ONE', NULL, 'TWO') |
|------------------------------------|
| NULL |
+------------------------------------+
Das folgende Beispiel zeigt, dass die ist CONCAT_WS-Funktion kein Trennzeichen anhängt, wenn nur eine Zeichenfolge für die Verkettung vorhanden ist:
SELECT CONCAT_WS(',', 'one');
+-----------------------+
| CONCAT_WS(',', 'ONE') |
|-----------------------|
| one |
+-----------------------+