将多行压缩到单个汇总行

时间:2018-03-22 22:20:29

标签: mysql sql database

我是MySQL的新手,需要一些帮助。我有一个表,每行代表一个订单的项目。这些项目位于特定区域,如下所示:

Order Number            Area
EEN0103944              305
EEN0103945              305
EEN0103945              305
EEN0103902              104
EEN0103902              111
EEN0103945              123
EEN0103945              005
EEN0103945              002

我正在尝试在MySQL中创建一个表格,将所有信息压缩成一行,使订单成为主键,如下所示:

Order Number             Area
EEN0103945               305
EEN0103945               104, 111, 123
EEN0103945               005, 002

1 个答案:

答案 0 :(得分:1)

您正在寻找group_concat()选项的distinct

select order_number, group_concat(distinct area separator ', ') as areas
from t
group by order_number