MySQL concat函数可以连接一个或者多个字符串,如
select concat('10'); 结果:10
select concat('11','22','33'); 结果 : 112233
MySQL的concat函数在连接字符串的时候,只要其中一个是NULL,那么将返回NULL ,如 :
select concat('11','22',null); 结果 : NULL
同时,concat有 to_char的作用,就是把其他类型转成varchar类型的
MySQL中还提供了另外一个进行字符串拼接的函数CONCAT_WS,
CONCAT_WS可以在待拼接的字符串之间加入指定的分隔符,第一个参数为要设置的分隔符,
而剩下的参数则为待拼接的字符串值
如连接后以逗号分隔
mysql> select concat_ws(',','11','22','33');
+-------------------------------+
| concat_ws(',','11','22','33') |
+-------------------------------+
| 11,22,33 |
+-------------------------------+
1 row in set (0.00 sec)
和concat不同的是, concat_ws函数在执行的时候,不会因为NULL值而返回NULL
mysql> select concat_ws(',','11','22',NULL);
+-------------------------------+
| concat_ws(',','11','22',NULL) |
+-------------------------------+
| 11,22 |
+-------------------------------+
1 row in set (0.00 sec)