- カテゴリ:
文字列とバイナリ関数 (一般)
CONCAT_WS¶
2つ以上の文字列を連結するか、2つ以上のバイナリ値を連結します。値のいずれかがNullの場合、結果もNullになります。
CONCAT_WS 演算子には少なくとも2つの引数が必要で、最初の引数を使用して後続のすべての引数を区切ります。
- こちらもご参照ください。
構文¶
CONCAT_WS( <separator> , <expression1> [ , <expressionN> ... ] )
引数¶
separator
区切り文字は、
expressionN
と同じ要件を満たしている必要があります。expressionN
入力式はすべて文字列であるか、すべてバイナリ値である必要があります。
戻り値¶
この関数は、最初の引数で区切られた2番目からN番目の引数を含む VARCHAR または BINARY を返します。
戻り値のデータ型は、入力値のデータ型と同じです。
使用上の注意¶
GET_DDL などのメタデータ関数は、入力として定数のみを受け入れます。連結入力はエラーを生成します。
CONCAT_WS は、最後の引数の後ではなく、引数の間に区切り文字を置きます。区切り文字の後に引数を1つだけ指定して CONCAT_WS を呼び出すと、区切り文字は追加されません。
照合の詳細¶
The collation specifications of all input arguments must be compatible.
The collation of the result of the function is the highest-precedence collation of the inputs.
例¶
3つの文字列を区切り文字で連結します。
SELECT CONCAT_WS(',', 'one', 'two', 'three'); +---------------------------------------+ | CONCAT_WS(',', 'ONE', 'TWO', 'THREE') | |---------------------------------------| | one,two,three | +---------------------------------------+
連結する文字列が1つだけの場合、 CONCAT_WS は区切り文字を追加しません。
SELECT CONCAT_WS(',', 'one'); +-----------------------+ | CONCAT_WS(',', 'ONE') | |-----------------------| | one | +-----------------------+