MySQL之CONCAT、CONCAT_WS和GROUP_CONCAT函数用法

news2024/11/18 3:41:28

目录

一、准备数据

二、concat函数

1.语法格式

2.语法说明

3.场景使用

4.限制条件

三、concat_ws函数

1.语法格式

2.语法说明

3.场景使用

4.限制条件

四、group_conat函数

1.语法格式

2.语法说明

3.场景使用

4.限制条件


一、准备数据

#创建用户表
CREATE TABLE `user` (
  `id` int(11) unsigned NOT NULL AUTO_INCREMENT COMMENT '主键id',
  `name` varchar(60) NOT NULL COMMENT '姓名',
  `age` int(11) NOT NULL COMMENT '年龄',
  `sex` int(1) NOT NULL COMMENT '性别(1是男 0是女 )',
  `hobby` varchar(255) DEFAULT NULL COMMENT '爱好',
  PRIMARY KEY (`id`)
) ENGINE=InnoDB AUTO_INCREMENT=4 DEFAULT CHARSET=utf8mb4 COMMENT='用户表';

#插入数据
INSERT INTO `user` (`id`, `name`, `age`, `sex`, `hobby`) VALUES (1, '小明', 20, 1, '唱歌');
INSERT INTO `user` (`id`, `name`, `age`, `sex`, `hobby`) VALUES (2, '小红', 19, 0, '跳舞');
INSERT INTO `user` (`id`, `name`, `age`, `sex`, `hobby`) VALUES (3, '小蓝', 17, 1, NULL);

二、concat函数

1.语法格式

concat(str1, str2,...)

2.语法说明

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

3.场景使用

select concat(name,'爱好',hobby) from user;

4.限制条件

在5.7版本之前,单个字符串长度限制为65535个字节,在5.7之后,限制为4294967295个字节

三、concat_ws函数

1.语法格式

concat_ws(separator, str1, str2, ...)

2.语法说明

第一个参数指定分隔符。需要注意的是分隔符不能为NULL,如果为NULL,则返回结果为NULL

3.场景使用

select concat_ws(",",name,age,hobby) from user;

4.限制条件

正常情况下长度是1024字节,可设置最大长度为102400字节

SET GLOBAL group_concat_max_len = 102400;
SET SESSION group_concat_max_len = 102400;

四、group_conat函数

1.语法格式

group_concat( [distinct] 要连接的字段 [order by 排序字段 asc/desc ] [separator '分隔符'] )

2.语法说明

使用distinct可以去重;order by子句是排序功能;separator是一个字符串的分隔符,缺省时默认是逗号

3.场景使用

①.不指定分隔符

select group_concat(name) from user;

②.指定分隔符

select group_concat(name separator '#') from user;

4.限制条件

正常情况下长度是1024字节,可设置最大长度为102400字节

SET GLOBAL group_concat_max_len = 102400;
SET SESSION group_concat_max_len = 102400;

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/730080.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

[已解决]Springboot项目启动时端口被占用

目录 1.打开CMD窗口 2.找到端口号 3.找到对应程序 4.终止任务 5.再次查询端口,没有找到对应的端口号说明进行杀死成功 6. 重新启动项目,可以正常启动 Springboot端口号默认8080,启动时经常会遇到端口号被占用的情况,报错信息…

swift 打包xcframework报错“No ‘swiftinterface‘ files found within“

1、分别编译当前的framework,生成对应的真机framework与模拟器framework 生成对应framework.png 2、新建一个对应接收xcframework的文件夹,以XXX.xcframework格式命名 3、打开终端利用xcodebuild -create-xcframework命令进行生成xcframework。 具体如…

第一章 计算机网络概述【计算机网络】

第一章 计算机网络概述【计算机网络】 前言推荐第一章 计算机网络概述1.1 计算机网络在信息时代中的作用1.2互联网概述1.2.1 网络的网络1.2.2互联网基础结构发展的三个阶段1.2.3互联网的标准化工作 1.3互联网的组成1.3.1互联网的边缘部分1.3.2互联网的核心部分 1.4计算机网络在…

网络——网络排错

https://zhuanlan.zhihu.com/p/607083215 背景 出现网络故障时,我们需要做什么呢,做完网工(不如dog),第一时间会被怀疑是网络问题,所以, 前端PC 前端PC能做的东西,不多&#xff0…

Go语言程序设计(十三)方法

Go语言虽然没有类(Class),但同样支持方法(Method),Go语言里的Method其实就是一个带接收者(Receiver)的函数。 一、Method的基本定义 Go语言中的Method类似于一个函数,只是函数名前多了一个绑定类型参数——receiver。 基本格式如下: func (recv recei…

启用 -parameters 编译选项简化 mybatis @Param 注解重复问题

在使用 mybatis 查询的时候, 只需要定义一个查询接口, mybatis 会为我们注入注解实现或是 xml 实现. 但当我们需要传递参数时, 通常需要 Param 来定义一个名称, 但经常的, 我们也不难发现, 这个名称与参数名称通常是一样的: User findUser(Param("username") String…

Docker使用Volumes做数据持久化

场景:docker 安装的 Pgsql 每当电脑重启docker重启 会发现 数据库都没了数据也没了 解决办法:使用docker volumes 做挂载 以PGSQL为例子,理论其他数据库或者项目需要持久化数据 应该都可以 1.创建Volumes 名字自己可以随便取。 2.拉去镜像…

开源预训练框架 MMPRETRAIN官方文档(概览、环境安装与验证、基础用户指南)

MMPretrain是全新升级的开源预训练框架。它已着手提供多个强大的预训练骨干网并支持不同的预训练策略。MMPretrain 源自著名的开源项目 MMClassification 和MMSelfSup,并开发了许多令人兴奋的新功能。目前,预训练阶段对于视觉识别至关重要。凭借丰富而强…

[SSM]MyBatis查询语句与动态SQL

目录 十、MyBatis查询语句专题 10.1返回Car 10.2返回List 10.3返回Map 10.4返回List 10.5返回Map,map> 10.6resultMap结果映射 使用resultMap进行结果映射 是否开启驼峰命名自动映射 10.7返回总记录条数 十一、动态SQL 11.1 if标签 11.2 where标签 11.3 trim标…

Oracle表空间和用户

Oracle表空间和用户 前言 1、创建表空间 2、 删除表空间 3、创建用户 4、用户赋权限 5、Oracle三个重要的角色 1、创建表空间 ORACLE 数据库的逻辑单元。 一个表空间可以与多个数据文件(物理结构)关联 一个数据库下可以建立多个表空间,一个表…

探秘制造业数智化:揭开低代码开发平台的新篇章

前言 随着数智时代的到来,制造业面临着前所未有的转型机遇。在这个信息爆炸的时代,如何有效运用科技和数据资源,成为了制造业企业的当务之急。而低代码开发平台,如JNPF快速开发平台,正是这个转型过程中不可或缺的利器。…

【编程语言 · C语言 · 结构体】

【编程语言 C语言 结构体】https://mp.weixin.qq.com/s/pWI712NxhPJi37eWrE9ofw

【产生初始解利器】基于蒙特卡洛模拟产生满足固定需求和固定供给的随机供给矩阵

如何生成一个总和是定值的随机矩阵 震惊,如果做一个约束比较强的模型,解的矩阵需要满足很多等式约束,而且都是整数,随机产生初始解很困难,该怎么办? 震惊,如果做一个约束比较强的模型&#xff0…

多元回归预测 | Matlab粒子群算法(PSO)优化极限梯度提升树XGBoost回归预测,PSO-XGBoost回归预测模型,多变量输入模型

文章目录 效果一览文章概述部分源码参考资料效果一览 文章概述 粒子群算法(PSO)优化极限梯度提升树XGBoost回归预测,PSO-XGBoost回归预测模型,多变量输入模型,多变量输入模型,matlab代码回归预测,多变量输入模型,多变量输入模型 评价指标包括:MAE、RMSE和R2等,代码质量极高…

多元回归预测 | Matlab麻雀算法(SSA)优化极限梯度提升树XGBoost回归预测,SSA-XGBoost回归预测模型,多变量输入模型

文章目录 效果一览文章概述部分源码参考资料效果一览 文章概述 麻雀算法(SSA)优化极限梯度提升树XGBoost回归预测,SSA-XGBoost回归预测模型,多变量输入模型,多变量输入模型,matlab代码回归预测,多

windows设置右键一键打开文件的配置

在安装软件时一般通过msi或者exe安装,这是一般会有提示绑定到鼠标右键,如果没有勾选则安装后就无法通过右键打开,这是需要把文件拖到快捷方式上面才可以使用该软件打开。 另外如何下载的是zip的压缩包源码格式根本没有设置的选项&#xff0c…

2.3 Web应用 -- 3. HTTP 消息格式

2.3 Web应用 -- 3. HTTP 消息格式 HTTP请求消息HTTP响应消息 HTTP请求消息 HTTP协议有两类消息 请求消息(request)响应消息(response) 请求消息 ASCII:人直接可读 HTTP请求消息的通用格式 上传输入的方法 POST方法 网页经常需要填写表格(form)在请求消息的消息体(…

【CMU15-445 FALL 2022】Project #1 - Extendable Hashing

Reference & Thank & Related CMU15445-project1-可扩展哈希表数据库——可拓展哈希(Extendable Hashing)【CMU15-445数据库】bustub Project #1:Buffer PoolExtendible Hashing (Dynamic approach to DBMS) Extendable Hashing co…

链表问题——长整数加法运算题解【双向链表】

长整数加法运算 问题描述 假设2个任意长度的整数x、y分别用链表A和B存储,现要求设计一个算法,实现xy。计算结果存储在链表C中。 说明: 链表A、B、C可以是单向链表或双向链表,但由于A和B输出时需要从头至尾遍历,而做…

Git提交项目到服务器上

目录 第一步:git status第二步:git pull第三步:git status第四步:git add第五步:git commit第六步:git push 第一步:git status git status 看一下你这个项目里,修改过什么公版的东西…