2 つの文字列式を連結した結果として、文字列を返すスカラ文字列関数です。
Synopsis
{fn CONCAT(string-expression1,string-expression2)}
引数
string-expression1, string-expression2 連結される文字列式。式は列の名前や文字リテラル、または他のスカラ関数の結果。 基本データ型は、(CHAR や VARCHAR などの) さまざまな文字タイプとして表示。
概要
CONCAT は、2 つの文字列を連結して、連結後の文字列を返します。連結演算子 (||) を使用しても、同じ動作を実行できます。すべての数値、または日付パラメータも、連結前に自動的に文字列に変換されます。数値の指数が展開され、先頭のゼロと末尾のゼロは連結前に削除されます。先頭または末尾の空白は文字列に連結できます。
NULL 値を文字列に連結すると NULL になりますが、これは業界全体の SQL 標準です。
以下の例では、Home_State 列と Home_City 列を連結して、ロケーション値を生成します。CONCAT 関数と連結演算子を使用して、連結が 2 回示されています。
SELECT {fn CONCAT(Home_State,Home_City)} AS LocationFunc,
Home_State||Home_City AS LocationOp
FROM Sample.Person
以下の例は、文字列と NULL を連結しようとした場合にどのようになるかを示しています。
SELECT {fn CONCAT(Home_State,NULL)} AS StrNull
FROM Sample.Person
以下では、連結前に数値がキャノニック形式に変換される例を示しています。このような状況を避けるには、以下のように数値を文字列として指定します。
SELECT {fn CONCAT(Home_State,0012.00E2)} AS StrNum,
{fn CONCAT(Home_State,'0012.00E2')} AS StrStrNum
FROM Sample.Person
以下は、末尾の空白の保持の例を示しています。
SELECT CHAR_LENGTH({fn CONCAT(Home_State,'          ')}) AS StrSpace
FROM Sample.Person
関連項目
ASCII CHAR SUBSTRING