group_concat()会计算哪些行属于同一组,将属于同一组的列显示出来,group by指定的列进行分组。

例如:

-- 根据物流订单id查询所有物流订单,车源订单,车辆信息(多条数据合并为一条数据,英文逗号隔开)
        SELECT
            a.id AS logisOrderId,
            a.logistics_order_code AS logisOrderCode,
            a.logis_order_sum_fee AS logisOrderSumFee,
            GROUP_CONCAT(b.id) AS carSourceOrderId,
            b.start_city_name AS startCityName,
            b.end_city_name AS endCityName,
            b.start_city_id AS startCityId,
            b.end_city_id AS endCityId,
            GROUP_CONCAT(b.buyer_id) AS buyerId,
            GROUP_CONCAT(b.buyer_name) AS buyerName,
            GROUP_CONCAT(b.buyer_phone) AS buyerPhone,
            GROUP_CONCAT(c.id) AS carSourceOrderItemId,
            GROUP_CONCAT(d.car_brand) AS carBrand,
            GROUP_CONCAT(d.car_type) AS carType,
            GROUP_CONCAT(d.colour) AS carColor,
            sum(c.insurance_fee) AS insuranceSumFee,
            sum(c.actual_fee) AS actualSumFee,
            GROUP_CONCAT(d.car_id) AS carId
        FROM
            t_ims_logistics_order a
          LEFT JOIN t_ims_carsource_order b ON a.id=b.logistics_order_id
          LEFT JOIN t_ims_carsource_order_item c ON  b.id = c.car_source_order_id
          LEFT JOIN t_ims_car d ON c.logistics_car_id = d.id
        WHERE  
         a.id=11
        GROUP BY a.id

合并前:两条数据

合并后:一条数据

链接:https://blog.csdn.net/mary19920410/article/details/76545053

MySQL函数GROUP_CONCAT() 实现多条数据合并的更多相关文章

  1. GROUP_CONCAT 将mysql多条数据合并为一条

    实现将多条数据合并为一条数据,在mysql中可以通过 GROUP_CONCAT 函数实现 上面是潇leader发我的和工作不相关的小小小需求描述,很明显是要把id和name相同的数据合并为一条,下面按 ...

  2. mysql一次插入多条数据

    mysql一次插入多条数据: INSERT INTO hk_test(username, passwd) VALUES ('qmf2', 'qmf2'),('qmf3', 'qmf3'),('qmf4 ...

  3. Mysql 保留最新的10条数据

    Mysql每天执行计划,保留最新的10条数据,其余的删除 1.Mysql 保留最新的10条数据 sql语句: DELETE tb FROM tbname AS tb,( SELECT id FROM ...

  4. mysql快速导入5000万条数据过程记录(LOAD DATA INFILE方式)

    mysql快速导入5000万条数据过程记录(LOAD DATA INFILE方式) 首先将要导入的数据文件top5000W.txt放入到数据库数据目录/var/local/mysql/data/${d ...

  5. oracle 函数 WMSYS.WM_CONCAT 与对应 mysql 函数GROUP_CONCAT的用法

    1.oracle函数 WMSYS.WM_CONCAT的使用 如图,将图1的结果变成图2的结果,使用函数 WMSYS.WM_CONCAT 即可. 查询语句需要配合使用group by select aa ...

  6. mysql 函数GROUP_CONCAT(temp.amount SEPARATOR ',')的用法

    mysql 函数GROUP_CONCAT(temp.amount SEPARATOR ',')的用法 使用场景:例如:想要查询用户的最喜欢购买的几种商品,这个时候就需要使用group_concat(字 ...

  7. WebGIS项目中利用mysql控制点库进行千万条数据坐标转换时的分表分区优化方案

    文章版权由作者李晓晖和博客园共有,若转载请于明显处标明出处:http://www.cnblogs.com/naaoveGIS/ 1. 背景 项目中有1000万条历史案卷,为某地方坐标系数据,我们的真实 ...

  8. MySql LAST_INSERT_ID 【插入多条数据时】

    LAST_INSERT_ID 自动返回最后一个 INSERT 或 UPDATE 操作为 AUTO_INCREMENT 列设置的第一个发生的值. 参考这里 The ID that was generat ...

  9. MySQL函数GROUP_CONCAT

    该函数返回带有来自一个组的连接的非NULL值的字符串结果.该函数是一个增强的Sybase SQL Anywhere支持的基本LIST()函数. 语法结构: GROUP_CONCAT([DISTINCT ...

随机推荐

  1. js数组之有已有数组创建新的数组

    concat()和splice()方法允许通过已经有的数组创建新的数组 concat()这个方法可以合并多个数组创建一个数组 splice()这个方法是获得截取一个数组中的子集创建一个新的数组. 理论 ...

  2. mysql套接字文件

  3. eclipse配置汇总

    1.背景色调节 general->editor->texteditor->选中background RGB: 85 90 205 2.java vm参数设置 VmAguments中 ...

  4. bootstrap3浏览器支持情况

    Internet Explorer 8 和 9 是被支持的,但是还是有很多CSS3属性和HTML5元素 -- 例如,圆角矩形和投影 -- 是肯定不被支持的.另外,Internet Explorer 8 ...

  5. Object-C-属性参数

    assign:默认参数setter 方法不会引起引用计数的变化 retain:setter方法首先释放旧的对象,将旧对象的值赋予输入对象,再提高输入对象的引用计数为1 copy:setter 方法首先 ...

  6. python中的对象(三)

    一.python对象 python使用对象模型来存储数据.构造任何类型的值都是一个对象. 所有python对象都拥有三个特性:身份.类型.值 身份:每个对象都有一个唯一的身份标识自己,任何对象的身份可 ...

  7. web前端----jQuery事件

    事件 常用事件 click(function(){...}) hover(function(){...}) blur(function(){...}) focus(function(){...}) c ...

  8. 0-5v转0-20ma和0-5v转4-20ma

    0-5v转0-20ma 0-5v转4-20ma

  9. Redis 如何保持和MySQL数据一致【一】

    1. MySQL持久化数据,Redis只读数据redis在启动之后,从数据库加载数据.读请求:不要求强一致性的读请求,走redis,要求强一致性的直接从mysql读取写请求:数据首先都写到数据库,之后 ...

  10. 三步搞定 opencv 初始环境设定

    一.设定bin的初始位置:比如我的电脑 D:\安装程序\opencv\build\x86\vc10\bin      H:\生产力工具\opencv\build\x86\vc10\bin D:\安装程 ...