MySQL 字符串拼接的几种方式
方法一:CONCAT()
MySQL 内置函数 CONCAT(string1,string2,...),此处是直接把 string1 和 string2 等字符串拼接起来。
说明:此方法在拼接的时候如果有一个值为NULL,则返回NULL
如:
SELECT CONCAT("name=","lich",NULL) AS test;
SELECT CONCAT("name=","lich") AS test;
方法二:CONCAT_WS()
MySQL 内置函数 CONCAT_WS(separator,string1,string2,...),但是可以多个字符串用指定的字符串进行拼接。
说明:string1,string2代表的是字符串,而separator代表的是连接其他参数的分隔符,可以是符号,也可以是字符串。如果分隔符为NULL,则结果为NULL。此方法参数可以为NULL。
如:
select concat_ws('#','name=','lich',null) AS test;
select concat_ws(NULL,'name=','lich',null) AS test;
select concat_ws("hello,",'name=','lich',null) AS test;
方法三:GROUP_CONCAT()
MySQL 内置函数 GROUP_CONCAT([DISTINCT] 要连接的字段 [Order BY ASC/DESC 排序字段] [Separator '分隔符'])
如:
SELECT id,GROUP_CONCAT(type) FROM log_sys_interview GROUP BY type ;
SELECT id,GROUP_CONCAT(type Separator '#') FROM log_sys_interview GROUP BY type ;
SELECT id,GROUP_CONCAT(type ORDER BY type DESC) FROM log_sys_interview GROUP BY ip ;
SELECT id,GROUP_CONCAT(DISTINCT type ORDER BY type DESC) FROM log_sys_interview GROUP BY ip ;
方法四:运算符
如下:
SELECT id,type FROM log_sys_interview ;
SELECT id,type+99 FROM log_sys_interview ;