如何在Mysql中组合两列和group_concat

Posted

技术标签:

【中文标题】如何在Mysql中组合两列和group_concat【英文标题】:how to combine two columns and group_concat in Mysql 【发布时间】:2015-04-22 11:52:57 【问题描述】:

我会用表格更好地解释:

表格大小

-----------------------------
id | type | size | cont_id  |
-----------------------------
 1 |  GP  |  30  |     21   |
 2 |  FR  |  30  |     21   |
 3 |  UP  |  40  |     21   | 
 4 |  GT  |  50  |     32   |
 5 |  UP  |  40  |     32   |
-----------------------------

餐桌购买

-------------------
cont_id | cus_nam |
-------------------
 21     |   xxx  | 
 32     |   zzz  |
------------------

现在我想把两列合二为一,然后做 group_concat

这就是我想做的,输出表应该是这样的:

------------------------------------
      type          |     cont_id  |
-----------------------------------
  30GP ,30FR,40UP   |    21        |
    50GT , 40UP     |    32        |
------------------------------------

【问题讨论】:

【参考方案1】:

您只需要第一个表。这几乎是一个基本的聚合:

select group_concat(size, type), cont_id
from size
group by cont_id;

【讨论】:

GROUP_CONCAT(offer_details.size, offer_details.type) as 'size' 它不工作它显示语法错误。我正在左连接三个表 @Munna 。 . .我们只能回答被问到的问题。问题中没有offer_details 表。其实问题的答案只需要第一张表。如果您有其他问题,请将其作为问题提出。更改问题并使已完成的答案无效是不礼貌的。

以上是关于如何在Mysql中组合两列和group_concat的主要内容,如果未能解决你的问题,请参考以下文章

如何在C中声明具有两列和未知行数的矩阵

在excel中查找两列的组合,一列中有一个条件

mySQL如何防止插入,除非两列(字段)的组合是唯一的? [复制]

删除同一目录中多个CSV文件中的前两列和最后一列

查找 MySQL 数据库中两列组合的重复项

根据两列和正在运行的ID过滤行