2017-01-25 8 views

答えて

1

使用CONCAT_WS

SELECT CONCAT_WS('', col1, col2) AS NewCol FROM tableName 

これは、両方の値がnullある場合に空の文字列を返します。

ドキュメント:

CONCAT_WS(セパレータ、STR1、STR2、...)

CONCAT_WS())(セパレータを連結の略で、CONCATの特殊な形式です。最初の引数は、残りの引数の区切り文字です。セパレータは、連結される文字列の間に追加されます。区切り文字は、残りの引数と同様に文字列にすることができます。セパレータがNULLの場合、結果はNULLになります。

0

CONCAT_WSを使用できます。そのNULLセーフです。最初の引数はセパレータです。

サンプル

MariaDB [l]> SELECT CONCAT_WS('',NULL,'123'); 
+--------------------------+ 
| CONCAT_WS('',NULL,'123') | 
+--------------------------+ 
| 123      | 
+--------------------------+ 
1 row in set (0.00 sec) 

MariaDB [l]> 
0

使用することもでき

SELECT ISNULL([col1],'') + ISNULL([col2],'') AS NewCol FROM tableName 
関連する問題