在MySQL中,实现字符串拼接主要有以下3种函数:
- concat(x,y,…)
- concat_ws(分隔符,x,y,…)
- group_concat(distinct xxx order by asd/desc yyy separator ‘分隔符’)
一、concat函数
concat()函数用于将多个字符串连接成一个字符串
格式:concat(str1,str2,…)
– mysql concat() –
SELECT CONCAT('I','love','somebody'); # Ilovesomebody
SELECT CONCAT('I','NULL,'somebody'); # NULL
SELECT CONCAT(14.4); # 14.4
注意:
如果有任何一个参数为NULL,则返回值为NULL;
如果所有参数为非二进制字符串,则返回非二进制字符串;
如果含有任一二进制字符串,则返回一个二进制字符串;
数字参数也会被转化为与之相等的二进制字符串格式,若要避免这种情况,可使用显式类型 cast,例如:
SELECT CONCAT(CAST(col_a AS CHAR), col_b) FROM table_xxx;
二、concat_ws函数
concat_ws函数,concat with separator 分隔符,是concat()的特殊形式。