详解MySQL中concat函数的用法(连接字符串)
发布时间 - 2026-01-10 22:01:56 点击率:次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
相关栏目:
【
网站优化151355 】
【
网络推广146373 】
【
网络技术251813 】
【
AI营销90571 】
相关推荐:
三星、SK海力士获美批准:可向中国出口芯片制造设备
C++时间戳转换成日期时间的步骤和示例代码
Win11怎么关闭透明效果_Windows11辅助功能视觉效果设置
如何撰写建站申请书?关键要点有哪些?
太平洋网站制作公司,网络用语太平洋是什么意思?
PHP 实现电台节目表的智能时间匹配与今日/明日轮播逻辑
Laravel如何记录自定义日志?(Log频道配置)
Laravel如何实现用户角色和权限系统_Laravel角色权限管理机制
北京网页设计制作网站有哪些,继续教育自动播放怎么设置?
Laravel如何处理跨站请求伪造(CSRF)保护_Laravel表单安全机制与令牌校验
标题:Vue + Vuex 项目中正确使用 JWT 进行身份认证的实践指南
Laravel如何实现API资源集合?(Resource Collection教程)
WordPress 子目录安装中正确处理脚本路径的完整指南
如何将凡科建站内容保存为本地文件?
如何用腾讯建站主机快速创建免费网站?
打开php文件提示内存不足_怎么调整php内存限制【解决方案】
Midjourney怎样加参数调细节_Midjourney参数调整技巧【指南】
Laravel怎么清理缓存_Laravel optimize clear命令详解
如何在IIS管理器中快速创建并配置网站?
Laravel如何创建自定义中间件?(Middleware代码示例)
Laravel怎么处理异常_Laravel自定义异常处理与错误页面教程
,交易猫的商品怎么发布到网站上去?
移动端手机网站制作软件,掌上时代,移动端网站的谷歌SEO该如何做?
Laravel怎么集成Log日志记录_Laravel单文件与每日日志配置及自定义通道【详解】
如何快速搭建高效简练网站?
做企业网站制作流程,企业网站制作基本流程有哪些?
Laravel队列任务超时怎么办_Laravel Queue Timeout设置详解
Laravel如何生成URL和重定向?(路由助手函数)
python中快速进行多个字符替换的方法小结
Laravel如何配置任务调度?(Cron Job示例)
谷歌浏览器如何更改浏览器主题 Google Chrome主题设置教程
浅析上传头像示例及其注意事项
HTML透明颜色代码怎么让图片透明_给img元素加透明色的技巧【方法】
Swift开发中switch语句值绑定模式
大连 网站制作,大连天途有线官网?
b2c电商网站制作流程,b2c水平综合的电商平台?
昵图网官网入口 昵图网素材平台官方入口
如何快速打造个性化非模板自助建站?
如何为不同团队 ID 动态生成多个独立按钮
高性能网站服务器配置指南:安全稳定与高效建站核心方案
laravel怎么配置和使用PHP-FPM来优化性能_laravel PHP-FPM配置与性能优化方法
如何用虚拟主机快速搭建网站?详细步骤解析
香港服务器网站搭建教程-电商部署、配置优化与安全稳定指南
高端企业智能建站程序:SEO优化与响应式模板定制开发
如何构建满足综合性能需求的优质建站方案?
Laravel广播系统如何实现实时通信_Laravel Reverb与WebSockets实战教程
什么是javascript作用域_全局和局部作用域有什么区别?
Laravel怎么为数据库表字段添加索引以优化查询
Laravel如何使用Livewire构建动态组件?(入门代码)
Python图片处理进阶教程_Pillow滤镜与图像增强

