PostgreSQL ни предоставя следните начини за конкатенация на низове и числа:
CONCAT()
функция, която конкатенира своите аргументи.- Операторът за конкатенация на тръби (
||
), който конкатенира своите операнди.
Примери за всеки по-долу.
CONCAT()
Функция
CONCAT()
функцията конкатенира текстовите представяния на своите аргументи.
Пример:
SELECT CONCAT('Player', 456);
Резултат:
Player456
Можем да включим интервал, или чрез добавяне на интервал към съществуващия низ, или чрез конкатенация, включително трети аргумент, който се състои единствено от интервал:
SELECT
CONCAT('Player ', 456) AS "Option 1",
CONCAT('Player', ' ', 456) AS "Option 2";
Резултат:
Option 1 | Option 2 ------------+------------ Player 456 | Player 456
Операторът за конкатенация на тръби (||
)
Този пример използва оператора за конкатенация (||
):
SELECT 'Player ' || 456;
Резултат:
Player 456
В този случай добавих интервал към първия аргумент.
Конкатенация на числа без низ
Ако трябва да свържете две числа, но без низове, първо ще трябва да прехвърлите поне едно от числата към низ. В противен случай възниква грешка.
Пример за грешката:
SELECT 123 || 456;
Резултат:
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.
Ето един бърз начин за преодоляване на този проблем:
SELECT CAST(123 AS varchar(3)) || 456;
Резултат:
123456