Вкладені вирази: середовища Power Query

У цьому посібнику ви дізнаєтеся про вкладені вирази, об’єкти та середовища в . Вкладені вирази та змінні використовуватимуться для обговорення того, як працюють середовища та допомагають генерувати дані. Ви також навчитеся працювати зі звичайними сценаріями під час трансформації вкладених об’єктів.

Зміст

Створення вкладених виразів

Вирази визначаються як формула, яка використовується для побудови значення.

Вкладені вирази: середовища Power Query

Вираз у рядку формул складається з підвиразів. Літерали 1 і 2 є підвиразами батьківського виразу.

Змінні визначаються як іменовані значення. Це зразок запису.

Вкладені вирази: середовища Power Query

Якщо відкрити вікно розширеного редактора, можна побачити змінні, які використовуються в запиті.

Вкладені вирази: середовища Power Query

Кожна з змінних a , b і c представляє значення, яке є результатом виразу, який ви часто зустрічаєте після знака рівності. Усі змінні в батьківському виразі, який є самим записом, утворюють середовище цього запису. У цьому середовищі кожна змінна має бути унікальною.

Отже, якщо ви додасте іншу змінну під назвою c , ви побачите повідомлення про помилку під вікном розширеного редактора.

Вкладені вирази: середовища Power Query

Вкладені вирази: середовища Power Query

Запис може отримати доступ до всіх своїх підвиразів за допомогою ідентифікаторів або імен змінних. Однак для вкладених виразів у записі кожне середовище відрізняється, оскільки вони можуть отримати доступ до всіх інших змінних у записі, крім самих себе.

У цьому прикладі ви бачите, що змінна c посилається на саму себе.

Вкладені вирази: середовища Power Query

Якщо натиснути «Готово», ви отримаєте повідомлення про помилку.

Вкладені вирази: середовища Power Query

Якщо ви отримаєте значення c , додавши оператор доступу до елемента, ви отримаєте результат. Ви також можете отримати той самий результат за допомогою виразу let , оскільки до нього застосовуються ті самі правила.

Вкладені вирази: середовища Power Query

Розуміння вкладених виразів у середовищі

Це ще один приклад рекордної вартості.

Вкладені вирази: середовища Power Query

Якщо ви відкриєте вікно розширеного редактора, ви побачите, що змінні a і b спільно використовують те саме середовище, яке є найвіддаленішим середовищем. Ви також побачите, що змінні x , y та z є підвиразами батьківського виразу a .

Вкладені вирази: середовища Power Query

Кожна змінна може мати доступ до всіх інших змінних у вкладеному записі, окрім себе. Ви можете викликати змінну, яка існує в іншому середовищі. У цьому прикладі ви можете бачити, що z посилається на b , яке знаходиться у зовнішньому середовищі.

Вкладені вирази: середовища Power Query

Змінні x , y та z можуть отримати доступ до b , оскільки b є частиною їх батьківського середовища виразу. Ви також можете мати ту саму змінну, але в різних середовищах.

У цьому іншому прикладі ви бачите, що внутрішній і зовнішній запис мають змінну x .

Вкладені вирази: середовища Power Query

Змінні мають бути унікальними у своєму власному середовищі. Використовуватиметься найближчий x , призначений змінній. У цьому прикладі запиту використовується внутрішній x , оскільки він ближчий з точки зору запису a .

Вкладені вирази: середовища Power Query

У цьому іншому запиті у виразі використовується найближчий x , який знаходиться біля змінної b .

Вкладені вирази: середовища Power Query

Зовнішня змінна b може посилатися на змінну x всередині запису a за допомогою оператора доступу до елемента. Вам потрібно звернутися до змінної a , а потім отримати доступ до x за допомогою квадратних дужок. Таким же чином запис a може посилатися на змінну x всередині змінної b .

Вкладені вирази: середовища Power Query

Коли середовище вкладеного запису a об’єднується зі змінними з батьківського виразу, це призводить до конфлікту, оскільки x існує двічі, і всі змінні мають бути унікальними у своєму середовищі. Оскільки змінна не може посилатися на саму себе, конфлікт вирішується шляхом посилання на зовнішній x.

Вкладені вирази: середовища Power Query

Вирішення типових сценаріїв

Поширеним сценарієм є трансформація вкладених об’єктів. Для демонстрації буде використана ця таблиця.

Вкладені вирази: середовища Power Query

Якщо ви хочете отримати значення із зовнішньої таблиці та помістити його у вкладену таблицю, є два способи досягти цього. Перший спосіб полягає у використанні параметра «Додати спеціальний стовпець» .

Клацніть значок таблиці у верхньому лівому куті панелі попереднього перегляду та виберіть «Додати спеціальний стовпець».

Вкладені вирази: середовища Power Query

Введіть Temp як назву стовпця та введіть заповнювач у настроюваному. Після завершення натисніть OK.

Вкладені вирази: середовища Power Query

У рядку формул замініть кожний вираз спеціальною функцією, додавши стовпець до вкладеної таблиці. Запустіть логіку для спеціальної функції та викличте її OT для зовнішньої таблиці. Потім додайте знак переходу.

Далі скористайтеся функцією Table.AddColumn , щоб додати стовпець. Зверніться до таблиці у зовнішній таблиці в стовпці «Імена». А потім введіть нову назву стовпця.

У цьому прикладі використана назва стовпця Дохід . Введіть кожну функцію, щоб отримати значення кожного рядка в стовпці Отримати дохід.

Вкладені вирази: середовища Power Query

Якщо клацнути пробіл у клітинці рядка в стовпці «Темп», ви отримаєте попередній перегляд вкладеної таблиці під панеллю попереднього перегляду. Ви побачите, що кожен рядок має значення зовнішньої таблиці.

Вкладені вирази: середовища Power Query

Використання змінних для зберігання значень

Другий метод перетворення вкладених об’єктів полягає у використанні змінних для зберігання значень. Спочатку додайте спеціальний стовпець і введіть Temp2 як назву стовпця. Для формули використовуйте вираз let для збереження значень у змінних.

Введіть let , а потім напишіть назву змінної. Для цього прикладу ім’я змінної myR . Далі прирівняйте змінну до стовпця Отримати дохід. Після цього введіть пропозицію in і скористайтеся функцією Table.AddColumn , щоб додати стовпець до вкладеної таблиці.

Для першого параметра функції введіть стовпець імен, який містить вкладені таблиці. Далі назвіть новий стовпець Дохід. Використовуйте кожний для виклику змінних кожного рядка.

Вкладені вирази: середовища Power Query

Якщо ви клацнете пробіл у клітинці рядка в стовпці Temp2, ви побачите, що він отримав значення із зовнішньої таблиці.

Вкладені вирази: середовища Power Query

Іншим поширеним сценарієм є пошук без спільного ключа. Для цього сценарію буде використано 2 зразки таблиць: таблиця категорій і таблиця продуктів .

Вкладені вирази: середовища Power Query

Вкладені вирази: середовища Power Query

Використовуйте таблицю категорій як проміжний запит, щоб доповнити атрибути таблиці розмірності продукту. Оскільки спільного ключа немає, злиття не можна виконати. Перше, що потрібно зробити, це вкласти повну таблицю категорій у запит таблиці продуктів за допомогою Додати настроюваний стовпець.

Додайте спеціальний стовпець і напишіть Категорія як назву стовпця. Потім у настроюваній формулі викличте запит категорії.

Вкладені вирази: середовища Power Query

Після цього ви вклали повну таблицю категорій у кожен рядок таблиці продуктів.

Вкладені вирази: середовища Power Query

Якщо клацнути пробіл у клітинці рядка в стовпці «Категорія», ви зможете побачити повну таблицю категорій у кожному рядку.

Вкладені вирази: середовища Power Query

Отримання одного значення

Якщо ви хочете отримати лише одне значення, вам потрібно відфільтрувати таблицю категорій до одного рядка, де частина рядка продукту відповідає групі продуктів у таблиці категорій.

Відкрийте діалогове вікно «Настроюваний стовпець», натиснувши кнопку шестірні поруч із «Доданим настроюваним» на панелі «Застосовані кроки».

Вкладені вирази: середовища Power Query

У формулу додайте функцію Table.SelectRows . Для першого параметра використовується таблиця категорій. Другий параметр використовував функцію Text.Contains як умову. Для внутрішньої таблиці ця функція перевіряє, чи містить текст частину рядка продукту у зовнішній таблиці.

Вкладені вирази: середовища Power Query

Під час доступу до зовнішньої таблиці ви помітите цедодає кожне ключове слово в рядок формул. Це унарна функція, яка приймає підкреслення ( _ ) як безіменну змінну. Однак, оскільки ви отримуєте доступ лише до стовпця, його можна пропустити.

Вкладені вирази: середовища Power Query

Якщо клацнути пробіл у клітинці рядка в стовпці «Категорія», ви побачите один рядок у кожній із вкладених таблиць.

Вкладені вирази: середовища Power Query

Звідти ви можете отримати значення для категорії за допомогою комбінації операторів доступу до рядка та поля.

Поверніться до діалогового вікна «Спеціальний стовпець» і додайте оператори у формулу. Щоб отримати перший рядок таблиці, введіть 0 у фігурні дужки. Потім у квадратних дужках укажіть назву поля Категорія.

Вкладені вирази: середовища Power Query

Щоб перевірити рішення на майбутнє, ви можете додати знак питання ( ? ) у кінці, щоб змінити поведінку не знайдено з повернення помилки на нуль.



Висновок

Середовища та вкладені вирази допомагають вашому запиту виводити певні значення з ваших кодів, щоб забезпечити бажані результати. Усвідомлювати їх важливо під час написання, оскільки, зрозумівши їх, ви зможете розв’язувати складніші та складніші сценарії.

Меліса


Труба в R: підключення функцій за допомогою Dplyr

Труба в R: підключення функцій за допомогою Dplyr

У цьому підручнику ви дізнаєтесь, як об’єднати функції разом за допомогою оператора каналу dplyr мовою програмування R.

RANKX Deep Dive: функція LuckyTemplates DAX

RANKX Deep Dive: функція LuckyTemplates DAX

RANKX від LuckyTemplates дозволяє повернути рейтинг певного числа в кожному рядку таблиці, який є частиною списку чисел.

Вилучення тем і зображень LuckyTemplates із PBIX

Вилучення тем і зображень LuckyTemplates із PBIX

Дізнайтеся, як розібрати файл PBIX, щоб витягти теми та зображення LuckyTemplates із фону та використовувати їх для створення звіту!

Шпаргалка формул Excel: Посібник середнього рівня

Шпаргалка формул Excel: Посібник середнього рівня

Шпаргалка формул Excel: Посібник середнього рівня

Календарна таблиця LuckyTemplates: що це таке та як ним користуватися

Календарна таблиця LuckyTemplates: що це таке та як ним користуватися

Календарна таблиця LuckyTemplates: що це таке та як ним користуватися

Python у LuckyTemplates: як встановити та налаштувати

Python у LuckyTemplates: як встановити та налаштувати

Дізнайтеся, як інсталювати мову програмування Python у LuckyTemplates і як використовувати її інструменти для написання кодів і відображення візуальних елементів.

Розрахунок динамічної норми прибутку – легкий аналіз LuckyTemplates за допомогою DAX

Розрахунок динамічної норми прибутку – легкий аналіз LuckyTemplates за допомогою DAX

Дізнайтеся, як обчислювати динамічну маржу прибутку за допомогою LuckyTemplates і як ви можете отримати більше інформації, глибше досліджуючи результати.

Сортування стовпців таблиці дат у LuckyTemplates

Сортування стовпців таблиці дат у LuckyTemplates

Дізнайтеся, як правильно сортувати поля зі стовпців розширеної таблиці дат. Це хороша стратегія для складних полів.

Знайдіть свої найкращі продукти для кожного регіону в LuckyTemplates за допомогою DAX

Знайдіть свої найкращі продукти для кожного регіону в LuckyTemplates за допомогою DAX

У цій статті я поясню, як знайти найпопулярніші продукти для регіону за допомогою обчислень DAX у LuckyTemplates, включаючи функції TOPN і CALCULATE.

Вимір сміття: що це таке і чому це щось інше, але не сміття

Вимір сміття: що це таке і чому це щось інше, але не сміття

Дізнайтеся, як використовувати вимірювання сміття для позначок низької потужності, які ви хочете ефективно включити у свою модель даних.