【问题标题】:Mysql query concate data into group concatemysql查询concat数据成group_concat
【发布时间】:2016-09-27 02:23:54
【问题描述】:

这是我的桌子。我进行了以下查询并得到了结果:

mysql - 查询:

                 SELECT   

 GROUP_CONCAT(CONCAT('', j0.rent_agree_id,'-',j0.rent_sche_id) ) AS agreement_ref_no
                FROM
                  rent_provision_history AS j0

                  GROUP BY provision_date

结果:

但我希望看到不同的结果。

例如对于我现在得到的最后一个结果行:4-68,4-69,6-107,6-108,6-109

但我想这样看: 4(68,69)|5(107,108,109)

我该怎么做?

【问题讨论】:

    标签: mysql sql group-concat


    【解决方案1】:

    您需要两个级别的聚合:

    SELECT provision_date,
           GROUP_CONCAT(rent_agree_id, '(', rsi, ')' SEPARATOR '|') agreement_ref_no
    FROM (SELECT j0.rent_agree_id, GROUP_CONCAT(j0.rent_sche_id) as rsi
          FROM rent_provision_historyj0
          GROUP BY j0.provision_date, j0.rent_agree_id
         ) j0
    GROUP BY j0.provision_date;
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2011-11-23
      • 2018-09-04
      • 2011-04-28
      • 2015-05-23
      • 2014-01-14
      • 2014-03-09
      • 2012-10-24
      相关资源
      最近更新 更多