当前位置:首页 > 数据库 > SQL函数Group_concat用法

SQL函数Group_concat用法

2022年09月16日 11:54:25数据库9

今天刷力扣sql1484出现一个新的函数GROUP_CONCAT(可能是我见的少),现总结如下

完整语法如下

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

假设有如下testgroup表:

SQL函数Group_concat用法 _ JavaClub全栈架构师技术笔记

SELECT * FROM testgroup

表结构与数据如上

现在的需求就是每个id为一行(即按照id进行分组)在前台每行显示该id所有分数,要达到如下效果

SQL函数Group_concat用法 _ JavaClub全栈架构师技术笔记

 可以看到 根据id 分成了三行 并且分数默认用 逗号 分割 但是有每个id有重复数据 接下来去重,代码如下

SELECT id,GROUP_CONCAT(DISTINCT score) FROM testgroup GROUP BY id

降序排序(升序只需换成asc)

SELECT id,GROUP_CONCAT(score ORDER BY score DESC) FROM testgroup GROUP BY id

SQL函数Group_concat用法 _ JavaClub全栈架构师技术笔记

 最后可以设置分隔符(以;作为分隔符)

SELECT id,GROUP_CONCAT(score SEPARATOR ';') FROM testgroup GROUP BY id

SQL函数Group_concat用法 _ JavaClub全栈架构师技术笔记

从而达到需要目的。

更多函数用法参见:MySQL教程之concat以及group_concat的用法 (baidu.com)

 菜鸟教程:MySQL 函数 | 菜鸟教程 (runoob.com)

作者:Chen洋
来源链接:https://www.cnblogs.com/cy0628/p/16355455.html

版权声明:
1、JavaClub(https://www.javaclub.cn)以学习交流为目的,由作者投稿、网友推荐和小编整理收藏优秀的IT技术及相关内容,包括但不限于文字、图片、音频、视频、软件、程序等,其均来自互联网,本站不享有版权,版权归原作者所有。

2、本站提供的内容仅用于个人学习、研究或欣赏,以及其他非商业性或非盈利性用途,但同时应遵守著作权法及其他相关法律的规定,不得侵犯相关权利人及本网站的合法权利。
3、本网站内容原作者如不愿意在本网站刊登内容,请及时通知本站(javaclubcn@163.com),我们将第一时间核实后及时予以删除。


本文链接:https://www.javaclub.cn/database/41824.html

分享给朋友:

“SQL函数Group_concat用法” 的相关文章

BUG  You have an error in your SQL syntax; check

BUG You have an error in your SQL syntax; check

java.sql.SQLSyntaxErrorException: You have an error in your SQL syntax; check the manual that corresponds to your MySQL server...

Linux安装MySQL(超详细)

Linux安装MySQL(超详细)

1 查看是否已经安装 Mysql rpm -qa | grep mysql 我之前装过一次! 如果你查看出来有东西,可以使用下面命令将其删除 rpm -e 文件名   2 下载官方 Mysq...

连接数据库版本不一致

Exception in thread "main" com.mysql.jdbc.exceptions.jdbc4.MySQLNonTransientConnectionException: Could not create connection to...

数据库之关系模型的组成,特点以及完整性约束

关系模型就是用二维表描述数据本身,以及数据之间的关系。 关系模型的组成: 数据结构(表结构)+关系操作(八个操作)+完整性约束(三个完整性) 实体完整性 在关系表中,所有元组主码的值都不能为空。 参照完整性 在关系模型中,采用给关系定义外键的形式进...

归纳:数据库设计的六个阶段详解(有这一篇就够了)

归纳:数据库设计的六个阶段详解(有这一篇就够了)

客官进来请坐下,耐心看完收获大! 数据库设计过程的六个阶段: 1.系统需求分析阶段: 2.概念结构设计阶段; 3.逻辑结构设计阶段: 4.数据库物理设计阶段; 5.数据库实施阶段; 6.数据库运行和维护阶段; 一,系统需求分析阶段:进行数据库...

泥瓦匠进阶:连接池原理设计并不难

泥瓦匠进阶:连接池原理设计并不难

摘要: 原创出处 https://www.bysocket.com 「公众号:泥瓦匠BYSocket 」欢迎关注和转载,保留摘要,谢谢!目录连接连接池产生原因连接池实现原理小结TEMPERANCE:Eat not to dullness;drink not to elevation. 节制:食不过饱...

MySQL学习(4)︱数据库的查询

MySQL学习(4)︱数据库的查询

在SQL中,使用select语句来查询数据。不同的关系数据库,select语法会有细微差别,在MySQL官网可以查询到支持的select语法。 SQL语法: SELECT column_name1, column_name2//...

mysql查询结果中文显示成了问号

character-set-server = utf8    collation-server = utf8_general_ci   然后 service  mysq...

会mysql不一定会sql

会mysql不一定会sql

1. 查询缓存 多数MySQL服务器都开启了查询缓存,相同的查询被执行多次,查询结果会被放到一个缓存中,这样,后续的相同的查询就不用操作表而直接访问缓存结果了。 //查询缓存不开启 $r= mysql_query("SELECT username...

MySQL查询数据库所有表名及其注释

1、查看Mysql 数据库 "ori_data"下所有表的表名、表注释及其数据量 SELECT  TABLE_NAME 表名,TABLE_COMMENT 表注释,TABLE_ROWS 数据量 FROM information_schema.tables WHERE...

发表评论

访客

◎欢迎参与讨论,请在这里发表您的看法和观点。