CONCAT_WS
CONCAT_WS() は Concatenate With Separator の略で、CONCAT() の特殊な形式です。最初の引数は、それ以降の引数に対する区切り文字です。区切り文字は連結される文字列の間に追加されます。区切り文字には文字列を指定でき、他の引数も同様に文字列を指定できます。区切り文字が NULL の場合、結果は NULL になります。
CONCAT_WS() は空文字列をスキップしません。ただし、区切り文字引数の後にある NULL 値はスキップします。
構文
CONCAT_WS(<separator>, <expr1>, ...)
引数
戻り値の型
VARCHAR データ型の値、または NULL データ型です。
例
SELECT CONCAT_WS(',', 'data', 'fuse', 'labs', '2021');
+------------------------------------------------+
| CONCAT_WS(',', 'data', 'fuse', 'labs', '2021') |
+------------------------------------------------+
| data,fuse,labs,2021 |
+------------------------------------------------+
SELECT CONCAT_WS(',', 'data', NULL, 'bend');
+--------------------------------------+
| CONCAT_WS(',', 'data', NULL, 'bend') |
+--------------------------------------+
| data,bend |
+--------------------------------------+
SELECT CONCAT_WS(',', 'data', NULL, NULL, 'bend');
+--------------------------------------------+
| CONCAT_WS(',', 'data', NULL, NULL, 'bend') |
+--------------------------------------------+
| data,bend |
+--------------------------------------------+
SELECT CONCAT_WS(NULL, 'data', 'fuse', 'labs');
+-----------------------------------------+
| CONCAT_WS(NULL, 'data', 'fuse', 'labs') |
+-----------------------------------------+
| NULL |
+-----------------------------------------+
SELECT CONCAT_WS(',', NULL);
+----------------------+
| CONCAT_WS(',', NULL) |
+----------------------+
| |
+----------------------+