PostgreSQL giver os følgende måder at sammenkæde strenge og tal:
CONCAT()
funktion, som sammenkæder dens argumenter.- Rørsammenkædningsoperatoren (
||
), som sammenkæder dets operander.
Eksempler på hver nedenfor.
CONCAT()
Funktion
CONCAT()
funktion sammenkæder tekstgengivelserne af dens argumenter.
Eksempel:
SELECT CONCAT('Player', 456);
Resultat:
Player456
Vi kan inkludere et mellemrum, enten ved at tilføje et mellemrum til den eksisterende streng, eller ved at sammenkæde inkludere et tredje argument, der udelukkende består af et mellemrum:
SELECT
CONCAT('Player ', 456) AS "Option 1",
CONCAT('Player', ' ', 456) AS "Option 2";
Resultat:
Option 1 | Option 2 ------------+------------ Player 456 | Player 456
Rørsammenkædningsoperatøren (||
)
Dette eksempel bruger sammenkædningsoperatoren (||
):
SELECT 'Player ' || 456;
Resultat:
Player 456
I dette tilfælde tilføjede jeg et mellemrum til det første argument.
Sammenkædning af tal uden en streng
Hvis du har brug for at sammenkæde to tal, men ingen strenge, skal du først caste mindst et af tallene til en streng. Ellers opstår der en fejl.
Eksempel på fejlen:
SELECT 123 || 456;
Resultat:
ERROR: operator does not exist: integer || integer LINE 1: SELECT 123 || 456; ^ HINT: No operator matches the given name and argument types. You might need to add explicit type casts.
Her er en hurtig måde at løse dette problem på:
SELECT CAST(123 AS varchar(3)) || 456;
Resultat:
123456