CONCAT_WS(separator,str1,str2,...)

CONCAT_WS(separator,str1,str2,...)

CONCAT_WS() は Concatenate With Separator ( セパレータと連結 ) を意味しており、CONCAT() の特殊な形態です。最初の引数が、残りの引数のセパレータになります。セパレータは、連結されるストリングの間に追加されます。セパレータは、あとの引数と同じく、ストリングである場合があります。セパレータが NULL の場合は、結果は NULL になります。

mysql> SELECT CONCAT_WS(',','First name','Second name','Last Name');
        -> 'First name,Second name,Last Name'
mysql> SELECT CONCAT_WS(',','First name',NULL,'Last Name');
        -> 'First name,Last Name'

CONCAT_WS() は空のストリングをとばしません。しかし、セパレータ引数のあとの NULL 値はすべてとばします。