全网整合营销服务商

电脑端+手机端+微信端=数据同步管理

免费咨询热线:400-708-3566

详解MySQL中concat函数的用法(连接字符串)

MySQL中concat函数

使用方法:

CONCAT(str1,str2,…) 

返回结果为连接参数产生的字符串。如有任何一个参数为NULL ,则返回值为 NULL。

注意:

如果所有参数均为非二进制字符串,则结果为非二进制字符串。

如果自变量中含有任一二进制字符串,则结果为一个二进制字符串。

一个数字参数被转化为与之相等的二进制字符串格式;若要避免这种情况,可使用显式类型 cast, 例如:

SELECT CONCAT(CAST(int_col AS CHAR), char_col)

MySQL的concat函数可以连接一个或者多个字符串,如

mysql> select concat('10');
+--------------+
| concat('10') |
+--------------+
| 10  |
+--------------+
1 row in set (0.00 sec)

mysql> select concat('11','22','33');
+------------------------+
| concat('11','22','33') |
+------------------------+
| 112233 |
+------------------------+
1 row in set (0.00 sec)

MySQL的concat函数在连接字符串的时候,只要其中一个是NULL,那么将返回NULL

mysql> select concat('11','22',null);
+------------------------+
| concat('11','22',null) |
+------------------------+
| NULL  |
+------------------------+
1 row in set (0.00 sec)

MySQL中concat_ws函数

使用方法:

CONCAT_WS(separator,str1,str2,...)

CONCAT_WS() 代表 CONCAT With Separator ,是CONCAT()的特殊形式。第一个参数是其它参数的分隔符。分隔符的位置放在要连接的两个字符串之间。分隔符可以是一个字符串,也可以是其它参数。

注意:

如果分隔符为 NULL,则结果为 NULL。函数会忽略任何分隔符参数后的 NULL 值。

如连接后以逗号分隔

mysql> select concat_ws(',','11','22','33');

+-------------------------------+
| concat_ws(',','11','22','33') |
+-------------------------------+
| 11,22,33 |
+-------------------------------+
1 row in set (0.00 sec)

和MySQL中concat函数不同的是, concat_ws函数在执行的时候,不会因为NULL值而返回NULL

mysql> select concat_ws(',','11','22',NULL);
+-------------------------------+
| concat_ws(',','11','22',NULL) |
+-------------------------------+
| 11,22 |
+-------------------------------+
1 row in set (0.00 sec)

MySQL中group_concat函数

完整的语法如下:

group_concat([DISTINCT] 要连接的字段 [Order BY ASC/DESC 排序字段] [Separator '分隔符'])

基本查询

mysql> select * from aa;
+------+------+
| id| name |
+------+------+
|1 | 10|
|1 | 20|
|1 | 20|
|2 | 20|
|3 | 200  |
|3 | 500  |
+------+------+
6 rows in set (0.00 sec)

以id分组,把name字段的值打印在一行,逗号分隔(默认)

mysql> select id,group_concat(name) from aa group by id;
+------+--------------------+
| id| group_concat(name) |
+------+--------------------+
|1 | 10,20,20|
|2 | 20 |
|3 | 200,500|
+------+--------------------+
3 rows in set (0.00 sec)

以id分组,把name字段的值打印在一行,分号分隔

mysql> select id,group_concat(name separator ';') from aa group by id;
+------+----------------------------------+
| id| group_concat(name separator ';') |
+------+----------------------------------+
|1 | 10;20;20 |
|2 | 20|
|3 | 200;500  |
+------+----------------------------------+
3 rows in set (0.00 sec)

以id分组,把去冗余的name字段的值打印在一行,

逗号分隔

mysql> select id,group_concat(distinct name) from aa group by id;
+------+-----------------------------+
| id| group_concat(distinct name) |
+------+-----------------------------+
|1 | 10,20|
|2 | 20  |
|3 | 200,500 |
+------+-----------------------------+
3 rows in set (0.00 sec)

以id分组,把name字段的值打印在一行,逗号分隔,以name排倒序

mysql> select id,group_concat(name order by name desc) from aa group by id;
+------+---------------------------------------+
| id| group_concat(name order by name desc) |
+------+---------------------------------------+
|1 | 20,20,10  |
|2 | 20|
|3 | 500,200|
+------+---------------------------------------+
3 rows in set (0.00 sec)

repeat()函数

用来复制字符串,如下'ab'表示要复制的字符串,2表示复制的份数

mysql> select repeat('ab',2);

+----------------+
| repeat('ab',2) |
+----------------+
| abab      |
+----------------+

1 row in set (0.00 sec)

又如

mysql> select repeat('a',2);

+---------------+
| repeat('a',2) |
+---------------+
| aa      |
+---------------+
1 row in set (0.00 sec)

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持。


# mysql  # concat函数  # concat用法  # mysql的concat函数  # Mysql使用concat函数实现关键字模糊查询功能(列表数据过滤含前后端代码)  # 详解MySQL拼接函数CONCAT的使用心得  # MySQL拼接字符串函数GROUP_CONCAT详解  # mysql函数拼接查询concat函数的使用方法  # Mysql5.7中使用group concat函数数据被截断的问题完美解决方法  # mysql group_concat()函数用法总结  # MySQL函数CONCAT、CONCAT_WS、GROUP_CONCAT用法详解  # 分隔符  # 的是  # 是一个  # 放在  # 第一个  # 多个  # 如有  # 均为  # 这种情况  # 任何一个  # 与之  # 其中一个  # 转化为  # 若要  # 又如  # 值为  # 大家多多  # 份数  # 中含有  # CAST 


相关文章: 定制建站流程解析:需求评估与SEO优化功能开发指南  如何制作新型网站程序文件,新型止水鱼鳞网要拆除吗?  如何快速生成ASP一键建站模板并优化安全性?  如何快速上传建站程序避免常见错误?  岳西云建站教程与模板下载_一站式快速建站系统操作指南  郑州企业网站制作公司,郑州招聘网站有哪些?  建站主机选购指南:核心配置与性价比推荐解析  建站主机与服务器功能差异如何区分?  陕西网站制作公司有哪些,陕西凌云电器有限公司官网?  建站主机默认首页配置指南:核心功能与访问路径优化  网站制作新手教程,新手建设一个网站需要注意些什么?  如何通过商城自助建站源码实现零基础高效建站?  如何在VPS电脑上快速搭建网站?  php能控制zigbee模块吗_php通过串口与cc2530 zigbee通信【介绍】  如何在阿里云通过域名搭建网站?  如何配置支付宝与微信支付功能?  怎么制作一个起泡网,水泡粪全漏粪育肥舍冬季氨气超过25ppm,可以有哪些措施降低舍内氨气水平?  商务网站制作工程师,从哪几个方面把握电子商务网站主页和页面的特色设计?  家族网站制作贴纸教程视频,用豆子做粘帖画怎么制作?  广州网站制作的公司,现在专门做网站的公司有没有哪几家是比较好的,性价比高,模板也多的?  制作旅游网站html,怎样注册旅游网站?  如何用西部建站助手快速创建专业网站?  如何在阿里云虚拟机上搭建网站?步骤解析与避坑指南  宝塔面板创建网站无法访问?如何快速排查修复?  云南网站制作公司有哪些,云南最好的招聘网站是哪个?  如何通过主机屋免费建站教程十分钟搭建网站?  香港服务器网站测试全流程:性能评估、SEO加载与移动适配优化  长春网站建设制作公司,长春的网络公司怎么样主要是能做网站的?  如何选购建站域名与空间?自助平台全解析  如何获取开源自助建站系统免费下载链接?  如何配置FTP站点权限与安全设置?  重庆市网站制作公司,重庆招聘网站哪个好?  如何快速生成橙子建站落地页链接?  网站制作专业公司有哪些,如何制作一个企业网站,建设网站的基本步骤有哪些?  招贴海报怎么做,什么是海报招贴?  MySQL查询结果复制到新表的方法(更新、插入)  C++如何将C风格字符串(char*)转换为std::string?(代码示例)  安云自助建站系统如何快速提升SEO排名?  建站主机如何选?性能与价格怎样平衡?  网站广告牌制作方法,街上的广告牌,横幅,用PS还是其他软件做的?  如何在万网自助建站平台快速创建网站?  如何制作公司的网站链接,公司想做一个网站,一般需要花多少钱?  建站之星后台密码遗忘?如何快速找回?  在线流程图制作网站手机版,谁能推荐几个好的CG原画资源网站么?  平台云上自主建站:模板化设计与智能工具打造高效网站  手机网站制作平台,手机靓号代理商怎么制作属于自己的手机靓号网站?  建站之星如何快速生成多端适配网站?  如何选择最佳自助建站系统?快速指南解析优劣  微信小程序 input输入框控件详解及实例(多种示例)  建站为何优先选择香港服务器? 

您的项目需求

*请认真填写需求信息,我们会在24小时内与您取得联系。