Google 表格查询 - 分组/连接多行

问题描述 投票:0回答:2

我正在运行带有

QUERY
SUM
GROUP BY
,但我想将行中的多个不同值聚合到单个行和列中。我希望将所有这些值连接在一起。

当前表:

小工具
比尔 红色 12
比尔 蓝色 9
莎拉 黄色 4
比尔 黄色 1
莎拉 橙色 10

预期表:

小工具
比尔 红、蓝、黄 22
莎拉 黄色、橙色 14
google-sheets google-query-language
2个回答
21
投票

您可以使用过滤器和连接功能来帮助:

要获取唯一的姓名列表:

=UNIQUE(A3:A)

要加入小部件:

=join(",",filter(B:B,A:A=E3))

对值求和:

=sum(filter(C:C,A:A=E3))

enter image description here


0
投票

您可以使用

MAP
使用单个公式来完成此操作,如下所示:

=LET(
  person, A2:A,
  widget, B2:B,
  count, C2:C,
  MAP(
    UNIQUE(TOCOL(person, 1)),
    LAMBDA(cur_person,
    {
      cur_person,
      JOIN(", ", FILTER(widget, person = cur_person)),
      SUMIF(person, cur_person, count)
     })))
© www.soinside.com 2019 - 2024. All rights reserved.