Условный столбец в Power Query - PullRequest
0 голосов
/ 02 мая 2019

У меня есть таблица с 3 столбцами: Имя, Свойство и Значение

Все имена являются уникальными.Но бывают случаи, когда, например, для разных Имен их свойства и значения равны одновременно.

Я хочу добавить условный столбец, в который будут добавлены все Имена с разделителем перевода строки, для которых свойства изначения равны.Так, например, для первого имени я бы пошел в условный столбец и увидел бы список из 5 других имен, имеющих такое же свойство и значение

PQ Table

Такдалеко я пытался добавить условный столбец:

Если свойство равно свойство затем

иначе, если значение равно значение затем имя

, но он просто возвращает значения из столбца имени, и я не знаюсложить эти имена вместе

Спасибо!

1 Ответ

0 голосов
/ 02 мая 2019

Вы можете сгруппировать строки по Property и Value, а затем объединить Name для каждой строки.

= Table.Group(Source, {"Property", "Value"}, {{"Names", each Text.Combine(_[Name], ", "), type text}})
  • Table.Group -как в SQL GROUP BY
  • Text.Combine - подобно массиву, соединяющему другие языки, вы предоставляете список и разделитель и получаете строку

Исходная таблица:

| Name | Property | Value |
| ---- | -------- | ----- |
| A    | a        |     1 |
| B    | b        |     2 |
| C    | a        |     2 |
| D    | a        |     1 |
| E    | b        |     2 |

Полный запрос:

let
    Source = Excel.CurrentWorkbook(){[Name="Table1"]}[Content],
    Grouped = Table.Group(Source, {"Property", "Value"}, {{"Names", each Text.Combine(_[Name], ", "), type text}})
in
    Grouped

Результат:

| Property | Value | Names |
| -------- | ----- | ----- |
| a        |     1 | A, D  |
| b        |     2 | B, E  |
| a        |     2 | C     |
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...