In PostgreSQL der CONCAT_WS() -Funktion verkettet zwei oder mehr Zeichenfolgen und fügt zwischen jeder Zeichenfolge ein Trennzeichen ein. Das Trennzeichen wird durch das erste Argument angegeben.
Syntax
Die Syntax lautet wie folgt:
concat_ws(sep text, str "any" [, str "any" [, ...] ])
Wobei sep text ist das zu verwendende Trennzeichen.
Beispiel
Hier ist ein Beispiel zur Veranschaulichung:
SELECT CONCAT_WS(',', 'Red', 'Green'); Ergebnis:
Red,Green
In diesem Fall habe ich die Strings mit einem Komma als Trennzeichen verkettet.
Hier ist ein Beispiel, das ein Leerzeichen als Trennzeichen verwendet:
SELECT CONCAT_WS(' ', 'Squid', 'Game'); Ergebnis:
Squid Game
Verkettung von Zahlen
PostgreSQL verkettet die Textdarstellung seiner Argumente, sodass wir Zahlen verketten können, ohne sie explizit in einen String umwandeln zu müssen:
SELECT CONCAT_WS(',', 1, 2, 3); Ergebnis:
1,2,3
Seien Sie jedoch vorsichtig, wenn führende Nullen vorhanden sind:
SELECT CONCAT_WS(',', 001, 002, 003); Ergebnis:
1,2,3
Null-Argumente
Null-Argumente werden ignoriert:
SELECT CONCAT_WS(' ', 'Player', NULL, 456); Ergebnis:
Player 456
Keine Argumente
Aufruf von CONCAT_WS() ohne Übergabe von Argumenten ergibt sich ein Fehler:
SELECT CONCAT_WS(); Ergebnis:
ERROR: function concat_ws() does not exist
LINE 1: SELECT CONCAT_WS();
^
HINT: No function matches the given name and argument types. You might need to add explicit type casts.