连接字符串
\quad \quad 在Select数据时,我们往往需要将数据进行连接后进行回显。很多的时候想将多个数据或者多行数据进行输出的时候,需要使用字符串连接函数。在SQL中,常见的字符串连接函数有concat(),group_concat(),concat_ws()。
1、concat( )
\quad \quad 返回结果为连接参数产生的字符串。如有任何一个参数为NULL,则返回值为 NULL。可以有一个或多个参数。
语法:
CONCAT(str1,str2,…)
参数:
要连接的各个字符串
eg:
牛客网第50题
将employees表中的所有员工的last_name和first_name通过(’)连接起来。(sqlite不支持concat,请用||实现,mysql支持concat)
select concat(last_name,"'",first_name) as name from employees;
2、concat_ws( )
\quad \quad CONCAT_WS( )代表 CONCAT With Separator,是CONCAT()的特殊形式。
语法:
CONCAT_WS(separator,str1,str2,…)
参数:
separator
:第一个参数是其它参数的分隔符。分隔符的位置放在要连接的两个字符串之间。分隔符可以是一个字符串,也可以是其它参数。如果分隔符为 NULL,则结果为 NULL。
str1,str2,…
:其他参数代表要连接的各个字符串。然而,函数会忽略任何分隔符参数后的 NULL 值。但是CONCAT_WS()不会忽略任何空字符串。 (然而会忽略所有的 NULL)。
eg
对于解答上述题,代码为:
select concat_ws("'",last_name,first_name) as name from employees;
3、group_concat( )
\quad \quad GROUP_CONCAT函数返回一个字符串结果,该结果由分组中的值连接组合而成。