这几天做项目用到了这个concat()连接的方法,整理了一下,希望对您有所帮助。废话不多说直接看介绍

1、MySQL的concat函数在连接字符串的时候,只要其中一个是NULL,那么将返回NULL
mysql> select concat(‘11’,‘22’,null);
±-----------------------+
| concat(‘11’,‘22’,null) |
±-----------------------+
| NULL |
±-----------------------+

在mysql中也可以连接多个字符串
mysql> select concat(‘11’,‘22’,‘333’,‘4444’) from dual;

2、concat_ws()函数, 表示concat with separator,即有分隔符的字符串连接
如连接后以逗号分隔

mysql> select concat_ws(’,’,‘11’,‘22’,‘33’);

±------------------------------+
| concat_ws(’,’,‘11’,‘22’,‘33’) |
±------------------------------+
| 11,22,33 |
±------------------------------+

和concat不同的是, concat_ws函数在执行的时候,不会因为NULL值而返回NULL
mysql> select concat_ws(’,’,‘11’,‘22’,NULL);
±------------------------------+
| concat_ws(’,’,‘11’,‘22’,NULL) |
±------------------------------+
| 11,22 |
±------------------------------+
在oracle中的concat()
而Oracle的concat函数连接的时候,只要有一个字符串不是NULL,就不会返回NULL,但是oracle中只能连接两个字符串

SQL> select concat(‘11’,NULL) from dual;
CONCAT

11

Logo

为开发者提供学习成长、分享交流、生态实践、资源工具等服务,帮助开发者快速成长。

更多推荐