Power Query для выбора столбцов из таблицы результатов запроса соединения

Я использую power query в Power BI, у меня есть две таблицы, для которых я выполнил внутреннее соединение и расширил один столбец в объединенной таблице.

let
Source = Table.NestedJoin(Sales,{"CustomerId"},Customer,{"Id"},"Customer",JoinKind.Inner),
#"Expanded Customer" = Table.ExpandTableColumn(Source, "Customer", {"Country"}, {"Customer.Country"})
in
   #"Expanded Customer"

Здесь отображаются все столбцы из продаж и столбец страны из таблицы «Клиент».

Я пытаюсь отобразить столбец идентификатора продажи из продаж и страны колонка от Заказчиков.

Я пробовал следующий код, но, похоже, он не работает.

Table.SelectColumns(Source, "Customer.Country", "SaleId" )

Я должен сделать это, используя только Power query, без синтаксиса DAX.

Спасибо за помощь.

Стоит ли изучать PHP в 2023-2024 годах?
Стоит ли изучать PHP в 2023-2024 годах?
Привет всем, сегодня я хочу высказать свои соображения по поводу вопроса, который я уже много раз получал в своем сообществе: "Стоит ли изучать PHP в...
Поведение ключевого слова "this" в стрелочной функции в сравнении с нормальной функцией
Поведение ключевого слова "this" в стрелочной функции в сравнении с нормальной функцией
В JavaScript одним из самых запутанных понятий является поведение ключевого слова "this" в стрелочной и обычной функциях.
Приемы CSS-макетирования - floats и Flexbox
Приемы CSS-макетирования - floats и Flexbox
Здравствуйте, друзья-студенты! Готовы совершенствовать свои навыки веб-дизайна? Сегодня в нашем путешествии мы рассмотрим приемы CSS-верстки - в...
Тестирование функциональных ngrx-эффектов в Angular 16 с помощью Jest
В системе управления состояниями ngrx, совместимой с Angular 16, появились функциональные эффекты. Это здорово и делает код определенно легче для...
Концепция локализации и ее применение в приложениях React ⚡️
Концепция локализации и ее применение в приложениях React ⚡️
Локализация - это процесс адаптации приложения к различным языкам и культурным требованиям. Это позволяет пользователям получить опыт, соответствующий...
Пользовательский скаляр GraphQL
Пользовательский скаляр GraphQL
Листовые узлы системы типов GraphQL называются скалярами. Достигнув скалярного типа, невозможно спуститься дальше по иерархии типов. Скалярный тип...
0
0
1 372
2

Ответы 2

Вы пытаетесь написать код с нуля? Есть возражения против использования команд ленты для достижения желаемого?

Ваш код не будет работать, потому что элемент Source не имеет столбца Customer.Country. Это добавляется только на следующем шаге.

Используйте ленту, чтобы понять синтаксис:

В качестве последнего шага в редакторе запросов выберите ненужные столбцы и удалите их. В Power Query многое происходит последовательно, а не в одной запутанной формуле. Это может сделать код немного длиннее, но его легче отслеживать и устранять неполадки.

Пытаюсь написать с нуля. Нет возражений против использования команд ленты, но при попытке изучить power query и DAX.

ken 25.10.2018 08:13

Как говорит Тейлин, вы легко сможете сделать это через графический интерфейс.

Причина, по которой он не работает, заключается в том, что вы имеете в виду первый шаг, на котором столбец Customer.Country еще не был расширен. Вместо этого вам нужно сослаться на шаг #"Expanded Customer".

Table.SelectColumns(#"Expanded Customer", "Customer.Country", "SaleId")

Тогда весь ваш код будет выглядеть так:

let
    Source = Table.NestedJoin(Sales,{"CustomerId"},Customer,{"Id"},"Customer",JoinKind.Inner),
    #"Expanded Customer" = Table.ExpandTableColumn(Source, "Customer", {"Country"}, {"Customer.Country"}),
    #"Select Columns" = Table.SelectColumns(#"Expanded Customer", "Customer.Country", "SaleId" )
in
    #"Select Columns"

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

ken 25.10.2018 08:14

Верно. Это именно то, что я сказал.

Alexis Olson 25.10.2018 15:24

Другие вопросы по теме