DISTINCT для сгруппированных рядов в POWER BI (DAX) - PullRequest
0 голосов
/ 09 октября 2019

У меня был СТОЛ

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

У меня есть СТОЛ:

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

Использовалось: let Source = Excel.Workbook (File.Contents ("c: \ Desktop \ stac.xlsx"), null, true), Sheet1_Sheet = Source {[Item = "Sheet1", Kind = "Sheet"]} [Data], #" Продвинутые заголовки "= Table.PromoteHeaders (Sheet1_Sheet, [PromoteAllScalars = true]), #" Измененный тип1 "= Table.TransformColumnTypes (#" Продвинутые заголовки ", {{" TYPE ", ввести текст}, {"ID", введите текст}}), # "Измененный тип" = Table.TransformColumnTypes (# "Измененный тип1", {{"ID", введите текст}, {"TYPE", введите текст}}),# "Grouped Rows1" = Table.Group (# "Измененный тип", {"ID"}, {{"All Rows", каждая , таблица типов [ID = текст, TYPE = текст]}}), #«Добавленный пользовательский» = Table.AddColumn (# «Сгруппированные строки1», «Пользовательский», каждый [Все строки] [ТИП]), # «Извлеченные значения» = Table.TransformColumns (# «Добавленный пользовательский», {«Пользовательский»,каждый Text.Combine (List.Transform (, Text.From), "+"), введите текст}), # "Удаленные столбцы" = Table.RemoveColumns (# "Извлеченные значения", {"Все строки"}) яn # «Удаленные столбцы»

Но мне нужно различить значения:

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

1 Ответ

0 голосов
/ 09 октября 2019

В качестве первого шага сгруппируйте вашу таблицу в конструкторе запросов по ID и Types. Таким образом, ваша таблица из этого

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})
...