mysql concat 去重 group_concat() 用法
MySQL group_concat() 函数用法
在使用 group by 对数据进行分组后,如果需要对 select 的数据项进行字符串拼接,这时就需要用到group_concat()函数。
1、基本用法
group_concat() 完整语法如下:
group_concat([DISTINCT] 要连接的字段 [Order BY 排序字段 ASC/DESC] [Separator '分隔符'])
通过 distinct可以去掉重复值,order by进行排序,separator指定分隔符,默认为逗号。
以一下数据为例演示:
2、基本字符串拼接
SELECT
province,
group_concat(city) citys
from region GROUP BY province
查询结果:
3、去重
SELECT
province,
group_concat(DISTINCT city) citys
from region GROUP BY province
查询结果:
4、order by 排序
SELECT
province,
group_concat(DISTINCT city ORDER BY sort asc) citys
from region GROUP BY province
查询结果:
四、separator 指定分隔符
SELECT
province,
group_concat(DISTINCT city ORDER BY sort asc Separator ' / ') citys
from region GROUP BY province
查询结果:
五、多字段拼接
以上的例子是基于单数据列演示的,如果需要多个数据列拼成一个字段返回的话,写法也很简单,如下所示:
group_concat(数据列1,'分隔符',数据列2,Separator '分隔符')
SELECT
province,
group_concat(city,':',sort Separator ' / ') citys
from region GROUP BY province
查询结果:
猜你喜欢
数据库
643
是这种写法却隐藏着较深的使用陷阱。在排序字段有数据重复的情况下,会很容易出现排序结果与预期不一致的问题。一、案例mysql版本:mysqlselectversion
blog
mysql用户权限控制sql语法案例
数据库
533
用户管理创建用户删除用户设置密码权限管理授权撤销授权刷新权限一、用户管理1.创建用户语法:createuser[用户名]identifiedby'[密码
weblog
633
mybatis模糊查询(mysql)接口方法:intcount(@Param("name")Stringname);配置文件: selectid="count"resultType="int
数据库基础
2782
从数据库中挑选出符合声明的数据,而不是像传统编程思维去指示计算机如何操作。所以最关键的一点是:SQL的语法并不按照语法顺序执行。2.sql的语法顺序一般来说sql的语法顺序是:SELECT[DISTIN
ofc
索引失效的几种情况(MySQL)
official
433
于前面是模糊的,所以不能利用索引的顺序,必须一个个去找,看是否满足条件。这样会导致全索引扫描或者全表扫描。如果是这样的条件wherecodelike'A%',就可以查找CODE中A开头的CODE的位置,
java基础
1248
java中break的特别用法(实现goto)publicclassA8{ publicstaticvoidmain(String[]args){ a: for(inti=0;i10;i
ofc
mysql整数类型的范围
weblog
734
mysql整数类型的范围MySQL支持多种数据类型,大致可以分为三类:数值、日期/时间和字符串(字符)类型。其中,整数类型包括:TINYINT、SMALLINT、MEDIUMINT、INT和
blog
mybatis 批量更新数据 mysql
数据库基础
3799
mybatis批量更新数据mysql方式1简单粗暴,写一个更新的方法,循环调用就是了,但是效率就比较低了。性能较差。方式2批处理,类似于:UPDATEstuSETname='jia',score
归档
2018年11月
12
2018年12月
33
2019年01月
28
2019年02月
28
2019年03月
32
2019年04月
27
2019年05月
33
2019年06月
6
2019年07月
12
2019年08月
12
2019年09月
21
2019年10月
8
2019年11月
15
2019年12月
25
2020年01月
9
2020年02月
5
2020年03月
16
2020年04月
4
2020年06月
1
2020年07月
7
2020年08月
13
2020年09月
9
2020年10月
5
2020年12月
3
2021年01月
1
2021年02月
5
2021年03月
7
2021年04月
4
2021年05月
4
2021年06月
1
2021年07月
7
2021年08月
2
2021年09月
8
2021年10月
9
2021年11月
16
2021年12月
14
2022年01月
7
2022年05月
1
2022年08月
3
2022年09月
2
2022年10月
2
2022年12月
5
2023年01月
3
2023年02月
1
2023年03月
4
2023年04月
2
标签
算法基础
linux
前端
c++
数据结构
框架
数据库
计算机基础
储备知识
java基础
ASM
其他
深入理解java虚拟机
nginx
git
消息中间件
搜索
maven
redis
docker
dubbo
vue
导入导出
软件使用
idea插件
协议
无聊的知识
jenkins
springboot
mqtt协议
keepalived
minio
mysql
ensp
网络基础
xxl-job
rabbitmq
haproxy
srs
音视频
webrtc
目录
没有一个冬天不可逾越,没有一个春天不会来临。最慢的步伐不是跬步,而是徘徊,最快的脚步不是冲刺,而是坚持。