MySQL字符串合并

article/2025/9/20 15:10:55

MySQL有几种合并字符串的方式,下面来介绍一下

CONCAT函数

concat(str1, str2,...) 返回结果为连接参数产生的字符串,如果有任何一个参数为null,则返回值为null。

mysql> select concat('www','MySQL','substringIndex','com')
+----------------------------------------------+
| concat('www','MySQL','substringIndex','com') |
+----------------------------------------------+
| wwwMySQLsubstringIndexcom                    |
+----------------------------------------------+
1 row in set

CONCAT_WS函数

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

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

  • 合并字符串,用 “.” 隔开
mysql> select concat_ws('.','www','MySQL','substringIndex','com')
+-----------------------------------------------------+
| concat_ws('.','www','MySQL','substringIndex','com') |
+-----------------------------------------------------+
| www.MySQL.substringIndex.com                        |
+-----------------------------------------------------+
1 row in set
  • 合并的字符串带null, 直接忽略
mysql> select concat_ws('.','www','MySQL','substringIndex',NULL,'com')
+-----------------------------------------------------------------+
| select concat_ws('.','www','MySQL','substringIndex',NULL,'com') |
+-----------------------------------------------------------------+
| www.MySQL.substringIndex.com                                    |
+-----------------------------------------------------------------+
1 row in set

GROUP_CONCAT函数

GROUP_CONCAT([DISTINCT] column1 [ORDER BY column2 ASC\DESC] [SEPARATOR seq]);

  • [DISTINCT]: 将不重复的column1按照column2升序或者降序连接
  • [ORDER BY column2 ASC\DESC]: 表示将会根据column2升序或者降序连接.其中column2不一定一定要求是column1,只要保证column2在这个分组中即可.如果没有写ORDER BY句段,那么连接是没有顺序的。
  • [SEPARATOR seq]: 表示各个column1将会以什么分隔符进行分隔,例如SEPARATOR '’,则表示column1将会以进行分隔。如果没有指定seq的时候,也即没有写SEPARATOR seq这个句段,那么就会默认是以,分隔的。

CONCAT函数中要连接的数据含有NULL,最后返回的是NULL,但是GROUP_CONCAT不会这样,他会忽略NULL值。

Example
在这里插入图片描述

  • 按年龄分组,对每个人的名字按id进行分组排序合并
select age, group_concat(names order by employee_id separator '.')
from Employees
group by age
order by age

在这里插入图片描述

  • 不使用group by
select group_concat(names order by employee_id separator '.')
from Employees

在这里插入图片描述

GROUP_CONCAT只是将xxx这一列中的多行数据进行连接成为一行字符串,而CONCAT则是可以将多列数据进行连接。所以当GROUP_CONCAT和(CONCAT_WS或者CONCAT)一起使用的时候,使得查询更加有效

select age, group_concat(concat(names, '(',salary,')') order by employee_id separator ';')
from Employees
group by age
order by age

在这里插入图片描述


http://chatgpt.dhexx.cn/article/8p5tTWva.shtml

相关文章

mysql concat字符串拼接函数使用

目录 1、concat 2、concat_ws 3、group_concat 1、concat select CONCAT(h,e,llo) from dual; 2、concat_ws 指定分隔符进行字符串的拼接 select CONCAT_WS(_,h,e,llo) from dual;3、group_concat 用法: group_concat( [distinct] {要连接的字段}[order by …

MySQL如何分组拼接字符串?

上一篇文章 跨表更新,看到自己写的SQL像个憨憨 写了关于跨表个更新的内容。一年过的很快,文中后来的两位员工 馮大 和 馮二 也要面对无情的 KPI 考核了,他们工作干的很不错,performance 分别是 4 和 5 新需求来了,静悄…

MySQL字符串拼接函数

MySQL字符串拼接函数有以下三个: CONCATCONCAT_WSGROUP_CONCAT 1.CONCAT 说明 对指定字符进行拼接 语法 CONCAT(str1,str2,...) 语法说明: CONCAT(字符1,字符2,...) 实例 SELECT CONCAT(this ,is ,a ,demo) AS result FROM DUAL2.CONCAT_WS 说明 …

mysql 实现字符串的拼接

在Mysql 数据库中存在两种字符串连接操作.具体操作如下 一. 语法: 1. CONCAT(string1,string2,…) 说明 : string1,string2代表字符串,concat函数在连接字符串的时候,只要其中一个是NULL,那么将返回NULL 例1: 例2: 2. CONCAT_WS(separator,str1,str2,...) 说明 :…

MySQL 字符串拼接 - 多种字符串拼接实战案例

本文首发:MySQL 字符串拼接 - 多种字符串拼接实战案例 - 卡拉云 MySQL 字符串拼接可以使多个字段的值组成一个集合,不仅可以拼接字符串与字符串、空格、特殊符号甚至可以拼接中文文本,方便我们在不同场景下应用。 本教详细讲解 CONCAT() 和…

MySQL字符串拼接的两种方式

第一种: MySQL自带语法Concat(string1,string2,string3...),此处是直接把string1和string2等等的字符串拼接起来(无缝拼接哦) 说明:此方法在拼接的时候如果有一个值为NULL,则返回NULL select concat(&qu…

MySQL字符串拼接(函数)

最近帮助处理数据,需要批量更新数据,遂上网查了查方法,在此记录一下。我的原始数据如下: 一.CONCAT()函数 说明 : CONCAT(string1,string2,string3...),此处是直接把string1、string2和string3等等的字符串无缝拼接起来,返回结果为连接参数产生的字符…

MYSql-字符串拼接

一、MySQL自带字符串拼接函数 CONCAT 字符串拼接CONCAT_WS 指定字符串分割拼接字符串拼接 ① 语法:CONCAT(str1,str2…) 解释:concat 拼接 str1和str2字符串, 省略号....代表可以多个字符串拼接 示例: SELECT CONCAT("hello&quo…

MySQL字符串拼接concat()、分组拼接字符串group_concat()

MySQL拼接 一、经典拼接concat(x,x,....)二、分隔符拼接CONCAT_WS(separator,str1,str2,...)三、分组拼接GROUP_CONCAT(expr) 一、经典拼接concat(x,x,....) 用法案例: SELECTconcat( 字符串, 拼接, ,啥都可以, 嘿嘿 ) AS concats FROM DUAL注意&…

SQL 拼接字符串

不同的数据库,相应的字符串拼接方式不同,下面进行详细讲解。 一、MySQL字符串拼接 1、CONCAT函数 语法格式:CONCAT(char c1, char c2, …, char cn) ,其中char代表字符串,定长与不定长均可以 连接两个字符串 sele…

Mysql之字符串拼接

mysql字符串拼接 两种方式,第一种,使用 “” 进行拼接(错误的方法), 第二种使用Mysql函数CONCAT()等函数。 使用 “” 使用“”进行对数据是加减。不能进行拼接 拼接用法: 数据表: 错误写法&am…

mysql中的实现字段或字符串拼接的三种方式

一、CONCAT函数 concat函数是将多个字段或字符串拼接为一个字符串;但是字符串之间没有任何分隔。 concat函数官方介绍 -- CONCAT函数的语法如下: CONCAT(str1,str2,...) 1.1、拼接非空字段或字符串 SELECT CONCAT(字段1,字段2,字段3,...) from 表名;-- 拼…

mysql 字符串拼接的几种方式

总是记不住字符串拼接,每次都要百度去搜索,所以在这里记录一下,好方便后续的查找,如有错误和问题可以提出,谢谢。 字符串拼接分为几种方式,在这里会一一举例写出: 第一种: mysql自…

Geth搭建私链(最新)

Geth搭建私链 puppeth 是 Geth 中一个非常有用的命令,它允许您使用一个交互式的命令行界面来创建、配置和管理您的私有链。但是在最新版本的Geth中已经删除了用于以动开发的库和puppeth工具,这也就给我们搭建私链增加了负担。 前提条件 1、Geth正确安…

Geth安装

结合了网上各种文章,经过十多个小时的失败,期间还把虚拟机搞得开机不了,但终于成功的安装了geth。下面我会展示我遇到的问题和解决方案 目录 1.系统环境 2.安装基础工具 3.安装cmake 4.安装Golang 5.防火墙及网络时间同步 6.进入geth …

Geth控制台常用命令

1、Geth控制台命令 Geth Console是一个交互式的JavaScript 执行环境,里面内置了一些用来操作以太坊的JavaScript对象,我们可以直接调用这些对象来获取区块链上的相关信息。 这些对象主要包括: # 主要包含对区块链进行访问和交互相关的方法 eth# 主要包含查看p2p 网…

geth控制台控制

目录 geth控制台控制 启动控制台:输出结果直接显示 启动控制台:控制台输出结果写入 output.log 文件,但不能连接MetaMask 退出控制台 常用命令 开始挖矿 停止挖矿 转账 问题:出现报错 password or unlock 问题&#xff1…

geth的安装和使用

geth的安装和使用过程 windows下安装Geth配置和使用搭建私有网络 windows下安装Geth 1.下载地址: https://geth.ethereum.org/downloads/ 下载windows版 2.按指示安装 3.在cmd下进入安装路径,输入geth help查看是否安装成功 出现下面情况表示安装成功…

使用Geth搭建多节点私有链

使用Geth搭建多节点私有链 步骤 1.编辑初始化配置文件genesis.json {"config": {"chainId": 6668,"homesteadBlock": 0,"eip150Block": 0,"eip150Hash": "0x000000000000000000000000000000000000000000000000000000…

以太坊编程-Geth

前提:开发环境为Windows版本 一、下载安装 geth安装官网地址:https://geth.ethereum.org/downloads/ 安装时,根据提示一步一步安装即可 安装完成之后,需要进行配置环境变量 二、创世区块部署 新建.json文件:新建记事…