1. concat()函数
使用方法:
返回的结果为连接参数产生的字符串,如有任何一个参数为null,则返回值为null
<强>注意:强>
如果所有参数均为非二进制字符串,则结果为非二进制字符串
如果自变量中含有任一二进制字符串,则结果为二进制字符串
一个数字参数被转为与之相等的二进制字符串格式,如要避免这种情况,可使用显式类型铸造
例如:
选择concat ((int_col char), char_col);
<强>使用例子:强>
<强> 1。字段两端加上”、“强>
<强> 强>
mysql>选择concat(& # 39; & # 39;名字,& # 39;,& # 39;)从“用户”; + - - - - - - - - - - - - - - - - - - - - - - - - - - - - + | concat (& # 39; & # 39; fdipzone, & # 39;, & # 39;) | + - - - - - - - - - - - - - - - - - - - - - - - - - - - - + | | fdipzone + - - - - - - - - - - - - - - - - - - - - - - - - - - - - + 1行组(0.00秒)
<强> 2。其中有一个参数为零强>
mysql>选择concat (null,名字)从“用户”; + - - - - - - - - - - - - - - - - - - - + | concat (null,名字)| + - - - - - - - - - - - - - - - - - - - | + | NULL + - - - - - - - - - - - - - - - - - - - + 1行组(0.00秒)
2. concat_ws()函数
使用方法:
concat_ws()函数是concat()函数的特殊形式,第一个参数是其他参数的分隔符。分隔符的位置在要连接的两个字符串之间。分隔符可以是一个字符串,也可以是其他参数。
如果分隔符为空,则结果为null。
函数会忽略任何分隔符参数后的零值,但concat_ws()不会忽略任何空字符串。
<强>使用例子:强>
<强> 1。使用”、“分隔多个字段强>
mysql>选择concat_ws (& # 39; & # 39; country_code,电话,地区)从“用户”; + - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + | concat_ws (& # 39; & # 39; country_code,电话,地区)| + - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + | 86,13794830550,广州| + - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + 1行组(0.00秒)
<强> 2。分隔符为空强>
mysql>选择concat_ws (null, country_code、电话、地区)从“用户”; + - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + | concat_ws (null, country_code、电话、地区)| + - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - | + | NULL + - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + 1行组(0.00秒)
<强> 3。参数中有空与空字符串强>
mysql>选择concat_ws (& # 39; & # 39; country_code,电话,null,地区,& # 39;& # 39;,年级)从“用户”; + - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + | concat_ws (& # 39; & # 39; country_code,电话,null,地区,& # 39;& # 39;,年级)| + - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + | 86,13794830550,广州,200 | + - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + 1行组(0.00秒)
3. group_concat()函数
使用方法:
group_concat可以得到表达式结合体的连结值,使用不同可以排除重复值。使用order by子句可以排序。
分隔符是一个字符串,用于分隔结果集中每个元素。默认是逗号,可以通过指定分离器”“完全移除这个分隔符。
<强>使用例子:强>
表结构
创建表“article_in_category”(“id”int(11)无符号不是零AUTO_INCREMENT article_id的int(11)无符号不是NULL, category_id添加的int(11)无符号不是NULL,主键(id),关键“article_id_INDEX”(“article_id”),关键“category_id_INDEX”(“category_id添加”) )引擎=InnoDB默认字符集=utf8;
插入数据:
插入“article_in_category”(“id”,“article_id”、“category_id添加”)值(NULL, & # 39; 1 & # 39;, & # 39; 1 & # 39;), (NULL, & # 39; 1 & # 39;, & # 39; 2 & # 39;), (NULL, & # 39; 1 & # 39;, & # 39; 3 & # 39;), (NULL, & # 39; 2 & # 39;, & # 39; 4 & # 39;), (NULL, & # 39; 2 & # 39;, & # 39; 3 & # 39;), (NULL, & # 39; 2 & # 39;, & # 39; 5 & # 39;), (NULL, & # 39; 3 & # 39;, & # 39; 1 & # 39;), (NULL, & # 39; 3 & # 39;, & # 39; 5 & # 39;), (NULL, & # 39; 3 & # 39;, & # 39; 6 & # 39;), (NULL, & # 39; 4 & # 39;, & # 39; 8 & # 39;);concat与group_concat函数使用流程