MySQL CONCAT() 函数的用法

本文将介绍MySQL的concat函数,利用该函数拼接字符串。

CONCAT()函数用于将多个字符串连接成一个字符串,是最重要的mysql函数之一,下面就将为您详细介绍 CONCAT() 函数。

CONCAT(str1,str2,…)                        

返回结果为连接参数产生的字符串。如有任何一个参数为NULL ,则返回值为 NULL。或许有一个或多个参数。 如果所有参数均为非二进制字符串,则结果为非二进制字符串。 如果自变量中含有任一二进制字符串,则结果为一个二进制字符串。一个数字参数被转化为与之相等的二进制字符串格式;若要避免这种情况,可使用显式类型 cast, 例如: 

mysql> select concat(cast(100 as char), ' Hello');
+-------------------------------------+
| concat(cast(100 as char), ' Hello') |
+-------------------------------------+
| 100 Hello                           |
+-------------------------------------+
1 row in set


mysql> select concat(' My', 'S', 'QL');
+--------------------------+
| concat(' My', 'S', 'QL') |
+--------------------------+
|  MySQL                   |
+--------------------------+
1 row in set


mysql> select concat(' My', NULL, 'QL');
+---------------------------+
| concat(' My', NULL, 'QL') |
+---------------------------+
| NULL                      |
+---------------------------+
1 row in set


mysql> select concat(14.3);
+--------------+
| concat(14.3) |
+--------------+
| 14.3         |
+--------------+
1 row in set

CONCAT_WS(separator,str1,str2,…) 

CONCAT_WS() 代表 CONCAT With Separator ,是 CONCAT() 的特殊形式。第一个参数是其它参数的分隔符。分隔符的位置放在要连接的两个字符串之间。分隔符可以是一个字符串,也可以是其它参数。如果分隔符为 NULL,则结果为 NULL。函数会忽略任何分隔符参数后的 NULL 值。

mysql> select concat_ws('|', 'First Name', 'Second Name', 'Last Name');
+----------------------------------------------------------+
| concat_ws('|', 'First Name', 'Second Name', 'Last Name') |
+----------------------------------------------------------+
| First Name|Second Name|Last Name                         |
+----------------------------------------------------------+
1 row in set

CONCAT_WS() 不会忽略任何空字符串,然而会忽略所有的 NULL。

mysql> select concat_ws('|', 'First Name', NULL, '  ', 'Last Name');
+-------------------------------------------------------+
| concat_ws('|', 'First Name', NULL, '  ', 'Last Name') |
+-------------------------------------------------------+
| First Name|  |Last Name                               |
+-------------------------------------------------------+
1 row in set
我们一定要给自己提出这样的任务:第一,学习,第二是学习,第三还是学习。 —— 列宁
0 不喜欢
说说我的看法 -
全部评论(
没有评论
关于
本网站属于个人的非赢利性网站,转载的文章遵循原作者的版权声明,如果原文没有版权声明,请来信告知:hxstrive@outlook.com
公众号