excel - PowerQuery:如何連接分組值?




group-by excel-2016 (2)

如果您的表是Source,並且NumberColumn具有數字類型,那麼這將起作用:

= Table.Group(Source, {"LetterColumn"}, {{"Column", each Text.Combine(List.Transform(_[NumberColumn], (x) => Number.ToText(x)), ","), type text}})

Table.Group 按操作執行分組,它創建一個由LetterColumn中具有相同值的所有行組成的表。 _[NumberColumn] 給出了此新表中NumberColumn列中的值列表。 List.Transform 部分將數字轉換為文本值, Text.Combine 將這些數字連接在一起,用逗號分隔每個值。

如果您還需要周圍的引號,您可以這樣做:

= Table.Group(Source, {"LetterColumn"}, {{"Column", each """" & Text.Combine(List.Transform(_[NumberColumn], (x) => Number.ToText(x)), ",") & """", type text}})

"""" 表示“字符”,並且&表示兩個文本值。

如果我有下表(如下圖所示),我該如何編寫一個可以連接分組結果的分組查詢?

對於這個例子,我想要通過 LetterColumn 進行分組並連接 NumberColumn

所以期望的結果將是:


您可以使用GUI以這種方式執行此操作:

  1. 選擇你的LetterColumn,然後選擇Transform / GroupBy:

  2. 選擇添加列/自定義列:

  3. 單擊新AllData列右上角的相反箭頭,從新AllData列中提取值:

  4. 刪除AllData列。





m