PostgreSQLは、文字列と数値を連結するための次の方法を提供します。
-
CONCAT()
引数を連結する関数。 - パイプ連結演算子(
||
)、オペランドを連結します。
以下のそれぞれの例。
CONCAT()
機能
CONCAT()
関数は、引数のテキスト表現を連結します。
例:
SELECT CONCAT('Player', 456);
結果:
Player456
既存の文字列にスペースを追加するか、スペースのみで構成される3番目の引数を連結して連結することにより、スペースを含めることができます。
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
この場合、最初の引数にスペースを追加しました。
文字列なしの数値の連結
2つの数値を連結する必要があるが文字列を連結しない場合は、最初に少なくとも1つの数値を文字列にキャストする必要があります。そうしないと、エラーが発生します。
エラーの例:
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