I PostgreSQL er CONCAT_WS()
funktion sammenkæder to eller flere strenge og placerer en separator mellem hver streng. Separatoren er specificeret af det første argument.
Syntaks
Syntaksen ser sådan ud:
concat_ws(sep text, str "any" [, str "any" [, ...] ])
Hvor sep text
er separatoren, der skal bruges.
Eksempel
Her er et eksempel til demonstration:
SELECT CONCAT_WS(',', 'Red', 'Green');
Resultat:
Red,Green
I dette tilfælde sammenkædede jeg strengene med et komma som separator.
Her er et eksempel, der bruger et mellemrum som separator:
SELECT CONCAT_WS(' ', 'Squid', 'Game');
Resultat:
Squid Game
Sammenhængende tal
PostgreSQL sammenkæder tekstrepræsentationen af sine argumenter, så vi kan sammenkæde tal uden at skulle konvertere dem eksplicit til en streng:
SELECT CONCAT_WS(',', 1, 2, 3);
Resultat:
1,2,3
Men vær forsigtig, hvis der er foranstillede nuller:
SELECT CONCAT_WS(',', 001, 002, 003);
Resultat:
1,2,3
Nul-argumenter
Nul-argumenter ignoreres:
SELECT CONCAT_WS(' ', 'Player', NULL, 456);
Resultat:
Player 456
Ingen argumenter
Kalder CONCAT_WS()
uden at sende nogen argumenter resulterer det i en fejl:
SELECT CONCAT_WS();
Resultat:
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.