mysql CONCAT() 函数用于将多个字符串连接成一个字符串
语法:
CONCAT(str1,str2,…)
返回结果:
- 返回结果为连接参数产生的字符串。
- 如有任何一个参数为NULL ,则返回值为 NULL。
参数:
有一个或多个参数。
参数的二进制问题:
-
如果所有参数均为非二进制字符串,则结果为非二进制字符串。
-
如果自变量中含有任一二进制字符串,则结果为一个二进制字符串。
-
一个数字参数被转化为与之相等的二进制字符串格式;若要避免这种情况,可使用显式类型 cast, 例如: SELECT CONCAT(CAST(int_col AS CHAR), char_col)
示例
- CONCAT 函数用于将两个字符串合并为一个字符串。如下例所示:
mysql> select concat('a','b','c');
+---------------------+
| concat('a','b','c') |
+---------------------+
| abc |
+---------------------+
1 row in set (0.00 sec)
- 如有任何一个参数为NULL ,则返回值为 NULL。如下例所示:
mysql> SELECT CONCAT('a', NULL, 'b');
+------------------------+
| CONCAT('a', NULL, 'b') |
+------------------------+
| NULL |
+------------------------+
1 row in set (0.00 sec)
- 其他构造例子
以下面这个表 country 为例:
mysql> SELECT code,name,Continent FROM world.country where code = 'CHN';
+------+-------+-----------+
| code | name | Continent |
+------+-------+-----------+
| CHN | China | Asia |
+------+-------+-----------+
1 row in set (0.00 sec)
随便构造看看
mysql> SELECT concat('I\'m from ',name) FROM world.country where code = 'CHN';
+---------------------------+
| concat('I\'m from ',Name) |
+---------------------------+
| I'm from China |
+---------------------------+
1 row in set (0.00 sec)