MySQL将多条数据合并成一条的完整代码示例

 更新时间:2024年05月07日 11:40:53   作者:jerry-89  
我们在操作数据的时候,有时候需要把多行数据,拼接成一行,下面这篇文章主要给大家介绍了关于MySQL将多条数据合并成一条的完整代码示例,文中通过图文介绍的非常详细,需要的朋友可以参考下

数据库中存的是多条数据,展示的时候需要合并成一条

数据表存储形式如下图

以type分组,type相同的算一条,且保留image和link的所有数据,用groupBy只保留一条数据

解决方案:用GROUP_CONCAT

完整语法如下

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

SELECT * FROM testgroup

表结构与数据如上

现在的需求就是每个id为一行 在前台每行显示该id所有分数

group_concat 上场!!!

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

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

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

排序

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

最后可以设置分隔符

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

二、多字段如何处理

select id,name,GROUP_CONCAT(CONCAT_WS(',',type,typename) SEPARATOR ',') typelinks from demo GROUP BY id,name;

三、Laravel GROUP_CONCAT使用方法

DB::raw('GROUP_CONCAT(pp.sku SEPARATOR ",") sku')

具体代码如下

$list = $this->ServiceModel->query()->where($where)
            ->groupBy('type')
            ->orderBy('update_time','desc')
            ->paginate($this->ServiceModel->pageSize, [
                'id',DB::raw('GROUP_CONCAT(CONCAT_WS(",",image,link) SEPARATOR ";") content'),
                'type','modified_user_id','status','create_time','update_time'
            ], "page", $page);
 
$total = $list->total();
$res = $list->items();

每条数据以";"分割,每个字段以“,”分割

一个字段可能对应多条数据,用mysql实现将多行数据合并成一行数据

 SQL

select a.ep_classes 类型, GROUP_CONCAT(a.ep_name SEPARATOR '  : ') 姓名2 from Table_A a3 group by a.ep_classes

需注意:

1.GROUP_CONCAT()中的值为你要合并的数据的字段名;

 SEPARATOR 函数是用来分隔这些要合并的数据的;

 ' '中是你要用哪个符号来分隔;

2.必须要用GROUP BY 语句来进行分组管理,不然所有的数据都会被合并成一条记录

总结

到此这篇关于MySQL将多条数据合并成一条的文章就介绍到这了,更多相关MySQL多条数据合并成一条内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!

相关文章

  • MySQL 性能优化的最佳20多条经验分享

    MySQL 性能优化的最佳20多条经验分享

    今天,数据库的操作越来越成为整个应用的性能瓶颈了,这点对于Web应用尤其明显。关于数据库的性能,这并不只是DBA才需要担心的事,而这更是我们程序员需要去关注的事情。
    2010-07-07
  • Windows版mysql 8.0.28 安装配置方法图文教程

    Windows版mysql 8.0.28 安装配置方法图文教程

    这篇文章主要为大家详细介绍了Windows版mysql 8.0.28 安装配置方法图文教程,文中安装步骤介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2022-06-06
  • mysql中的自连接与join关联

    mysql中的自连接与join关联

    这篇文章主要介绍了mysql中的自连接与join关联,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教
    2024-09-09
  • mysql 存储过程的问题

    mysql 存储过程的问题

    最近我接触了一本php 与 mysql,老外写的一本书,书中有个tshirtshop网店代码,其中操作数据库的大多用的是mysql存储过程
    2009-06-06
  • MySQL数据库迁移全过程

    MySQL数据库迁移全过程

    本文详细解析了MySQL数据库迁移的整个过程,包括准备工作、迁移方法、注意事项和优缺点,文章介绍了三种常见的迁移方法:使用mysqldump导出和导入、使用ibd文件迁移和使用目录整体迁移,每种方法都有其优缺点,选择合适的方法取决于具体的迁移需求和环境
    2025-02-02
  • Windows8下mysql 5.6.15 安装配置方法图文教程

    Windows8下mysql 5.6.15 安装配置方法图文教程

    这篇文章主要为大家详细介绍了Windows8下mysql 5.6.15 安装配置方法图文教程,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2018-09-09
  • MySQL 数据库整合攻略之表操作技巧与详解

    MySQL 数据库整合攻略之表操作技巧与详解

    本文详细介绍了MySQL数据库中表的创建、查看、修改和删除等操作技巧,感兴趣的朋友一起看看吧
    2024-11-11
  • Idea 如何导入Mysql8.0驱动jar包

    Idea 如何导入Mysql8.0驱动jar包

    IDEA中的库(Libraries)就是用来存放外部jar包,我们的项目或模块需要某些jar包时,可以从这里把包导入到模块依赖(Dependencies)中,本文给大家介绍Idea 如何导入Mysql8.0驱动jar包,感兴趣的朋友一起看看吧
    2023-12-12
  • mysql字符串函数详细汇总

    mysql字符串函数详细汇总

    这篇文章主要介绍了mysql字符串函数详细汇总,字符串函数主要用来处理数据库中的字符串数据,更多相关内容需要的朋友可以参考一下
    2022-07-07
  • 详解MySQL中表的内外连接

    详解MySQL中表的内外连接

    这篇文章主要为大家介绍了MySQL中表的内外连接的相关知识,文中通过示例代码介绍的非常详细,具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2023-06-06

最新评论