POWER BI (DAX) 中分组行的 DISTINCT
DISTINCT for Grouped ROWS in POWER BI (DAX)
我有一个TABLE
ID TYPES
1 A \
1 B \
2 B \
3 A \
4 A \
4 A \
4 A \
4 C \
4 D \
4 E \
5 B \
5 B \
6 A \
7 A \
7 B \
7 C \
8 B \
8 B \
9 D \
10 A \
10 A \
10 D
我有 TABLE:
ID TYPES<br>
1 A+B \
2 B \
3 A \
4 A+A+A+C+D+E \
5 B+B \
6 A \
7 A+B+C \
8 B+B \
9 D \
10 A+A+D
曾用过:
让
来源 = Excel.Workbook(File.Contents("c:\Desktop\stac.xlsx"), null, true),
Sheet1_Sheet = 来源{[Item="Sheet1",Kind="Sheet"]}[数据],
#"Promoted Headers" = Table.PromoteHeaders(Sheet1_Sheet, [PromoteAllScalars=true]),
#"Changed Type1" = Table.TransformColumnTypes(#"Promoted Headers",{{"TYPE", 输入文字}, {"ID", 输入文字}}),
#"Changed Type" = Table.TransformColumnTypes(#"Changed Type1",{{"ID", 输入文字}, {"TYPE", 输入文字}}),
#"Grouped Rows1" = Table.Group(#"Changed Type", {"ID"}, {{"All Rows", 每个 , 输入 table [ ID=文本, TYPE=文本]}}),
#"Added Custom" = Table.AddColumn(#"Grouped Rows1", "Custom", 每个[所有行][TYPE]),
#"Extracted Values" = Table.TransformColumns(#"Added Custom", {"Custom", 每个 Text.Combine(List.Transform(, Text.From), "+"), 输入文本}),
#"Removed Columns" = Table.RemoveColumns(#"Extracted Values",{"All Rows"})
在
#"Removed Columns"
但我需要不同的值:
ID TYPES<br>
1 A+B \
2 B \
3 A \
4 A+C+D+E \
5 B \
6 A \
7 A+B+C \
8 B \
9 D \
10 A+D
第一步,将查询设计器中的 table 按 ID
和 Types
分组。所以你的table会变成这个
ID Types
1 A
1 B
1 B
2 B
3 A
4 A
4 A
4 A
对此:
ID Types
1 A
1 B
2 B
3 A
4 A
然后应用您在上述代码中执行的相同步骤,将不同类型合并到一列中:
Table.TransformColumns(#"Added Custom", {"Custom", each Text.Combine(List.Transform(, Text.From), "+"), type text})
我有一个TABLE
ID TYPES 1 A \ 1 B \ 2 B \ 3 A \ 4 A \ 4 A \ 4 A \ 4 C \ 4 D \ 4 E \ 5 B \ 5 B \ 6 A \ 7 A \ 7 B \ 7 C \ 8 B \ 8 B \ 9 D \ 10 A \ 10 A \ 10 D
我有 TABLE:
ID TYPES<br> 1 A+B \ 2 B \ 3 A \ 4 A+A+A+C+D+E \ 5 B+B \ 6 A \ 7 A+B+C \ 8 B+B \ 9 D \ 10 A+A+D
曾用过: 让 来源 = Excel.Workbook(File.Contents("c:\Desktop\stac.xlsx"), null, true), Sheet1_Sheet = 来源{[Item="Sheet1",Kind="Sheet"]}[数据], #"Promoted Headers" = Table.PromoteHeaders(Sheet1_Sheet, [PromoteAllScalars=true]), #"Changed Type1" = Table.TransformColumnTypes(#"Promoted Headers",{{"TYPE", 输入文字}, {"ID", 输入文字}}), #"Changed Type" = Table.TransformColumnTypes(#"Changed Type1",{{"ID", 输入文字}, {"TYPE", 输入文字}}), #"Grouped Rows1" = Table.Group(#"Changed Type", {"ID"}, {{"All Rows", 每个 , 输入 table [ ID=文本, TYPE=文本]}}), #"Added Custom" = Table.AddColumn(#"Grouped Rows1", "Custom", 每个[所有行][TYPE]), #"Extracted Values" = Table.TransformColumns(#"Added Custom", {"Custom", 每个 Text.Combine(List.Transform(, Text.From), "+"), 输入文本}), #"Removed Columns" = Table.RemoveColumns(#"Extracted Values",{"All Rows"}) 在 #"Removed Columns"
但我需要不同的值:
ID TYPES<br> 1 A+B \ 2 B \ 3 A \ 4 A+C+D+E \ 5 B \ 6 A \ 7 A+B+C \ 8 B \ 9 D \ 10 A+D
第一步,将查询设计器中的 table 按 ID
和 Types
分组。所以你的table会变成这个
ID Types
1 A
1 B
1 B
2 B
3 A
4 A
4 A
4 A
对此:
ID Types
1 A
1 B
2 B
3 A
4 A
然后应用您在上述代码中执行的相同步骤,将不同类型合并到一列中:
Table.TransformColumns(#"Added Custom", {"Custom", each Text.Combine(List.Transform(, Text.From), "+"), type text})