Функціональний запит і оператори в редакторі запитів

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

Зміст

Створення функціонального запиту

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

Функціональний запит і оператори в редакторі запитів

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

У цьому прикладі параметрами є a і b , а тілом функції є a + b . Назвіть запит Add2Values .

Функціональний запит і оператори в редакторі запитів

Ось так виглядає запит функції.

Функціональний запит і оператори в редакторі запитів

Поруч із назвою запиту на панелі запитів ви можете побачити піктограму fx , яка вказує на те, що це функціональний запит.

Функціональний запит і оператори в редакторі запитів

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

Функціональний запит і оператори в редакторі запитів

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

Функціональний запит і оператори в редакторі запитів

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

Функціональний запит і оператори в редакторі запитів

Функціональний запит і оператори в редакторі запитів

Виклик запиту спеціальної функції

Щоб викликати спеціальну функцію для кожного рядка таблиці, ви можете перейти на вкладку «Додати стовпець» і вибрати « Викликати спеціальну функцію» .

Функціональний запит і оператори в редакторі запитів

Інший спосіб — натиснути піктограму міні-таблиці у верхньому лівому куті вікна попереднього перегляду та вибрати «Викликати спеціальну функцію».

Функціональний запит і оператори в редакторі запитів

Якщо клацнути Виклик спеціальної функції, з’явиться діалогове вікно. Введіть AddValues ​​як назву стовпця та виберіть Add2Values ​​як запит функції. Потім встановіть значення для кожного параметра.

У цьому прикладі значення знаходяться в стовпцях 1 і 2.

Функціональний запит і оператори в редакторі запитів

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

Функціональний запит і оператори в редакторі запитів

Видалення аргументу

Якщо видалити один із аргументів у формулі, значення в новому стовпці дадуть помилку . У цьому прикладі стовпець2 видалено з формули.

Функціональний запит і оператори в редакторі запитів

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

Функціональний запит і оператори в редакторі запитів

Настроювана функція має необхідний набір параметрів, який дозволяє нам створювати додаткові параметри функції.

Для наступного кроку поверніться до запиту функції Add2Values ​​і відкрийте вікно розширеного редактора. Потім додайте необов’язкове ключове слово всередині дужок і натисніть «Готово».

Функціональний запит і оператори в редакторі запитів

Якщо ви повернетеся до SumExample , ви побачите, що значення Error в останньому стовпці перетворюються на нульові значення. Застосування оператора до значень, які включають null, завжди повертатиме null.

Функціональний запит і оператори в редакторі запитів

Інша річ, про яку слід пам’ятати, це те, що Function Query приймає аргументи будь-якого типу. Це потенційно може спричинити проблеми, оскільки ви можете передати текстове значення та викликати іншу помилку. Оператор додавання не можна застосувати до операндів цього типу даних.

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

Функціональний запит і оператори в редакторі запитів

Додавання аргументу

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

Функціональний запит і оператори в редакторі запитів

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

Функціональний запит і оператори в редакторі запитів

Є засіб, який допомагає впоратися з такою ситуацією. Спочатку створіть новий порожній запит і введіть функцію Function.From у рядку формул. Потім ви побачите документацію функції.

Функціональний запит і оператори в редакторі запитів

Щоб продемонструвати, скопіюйте запит функції Add2Values ​​і відкрийте вікно розширеного редактора. Потім введіть Function.From на початку синтаксису.

Для першого аргументу введіть функцію як тип функції. Для другого аргументу введіть List.Sum , щоб підсумувати значення та отримати список. Після цього натисніть «ОК» і перейменуйте запит на «AddValues» .

Функціональний запит і оператори в редакторі запитів

Потім поверніться до запиту таблиці SumExample і змініть запит функції на AddValues . Ви побачите, що стовпець AddValues ​​тепер містить суму значень кожного рядка стовпця.

Функціональний запит і оператори в редакторі запитів

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

Як ви називаєте свої параметри, не має значення.

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

Розуміння унарних функцій

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

Як приклад, додайте приклад запиту фільтра, створивши новий порожній запит. Далі відкрийте вікно розширеного редактора та введіть наступний синтаксис.

Функціональний запит і оператори в редакторі запитів

Після цього ви побачите таблицю зі стовпцями CustomerID і Name на панелі попереднього перегляду. Назвіть запит FilterExample .

Функціональний запит і оператори в редакторі запитів

Написання кодів у функціональному запиті

Замість того, щоб використовувати інтерфейс користувача для створення коду, ви можете просто написати код самостійно. Якщо ви хочете вибрати рядки, де ідентифікатор клієнта перевищує 2, клацніть fx біля панелі формул, щоб вручну ввести крок. Power Query автоматично повертає ім’я змінної останнього кроку на панелі «Застосовані кроки».

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

Функціональний запит і оператори в редакторі запитів

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

Функціональний запит і оператори в редакторі запитів

Після натискання «Готово» ви побачите, що результат генерується.

Функціональний запит і оператори в редакторі запитів

Щоб покращити читабельність формули, ви можете опустити підкреслення під час доступу до полів або стовпців.

Функціональний запит і оператори в редакторі запитів

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

Функціональний запит і оператори в редакторі запитів

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



Висновок

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

Меліса


Поле пошуку PowerApps: як додати та налаштувати

Поле пошуку PowerApps: як додати та налаштувати

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

Приклад SELECTEDVALUE DAX – вибір розділювача врожаю

Приклад SELECTEDVALUE DAX – вибір розділювача врожаю

Збирайте або фіксуйте значення в мірі для повторного використання в іншій мірі для динамічних обчислень за допомогою SELECTEDVALUE DAX у LuckyTemplates.

Історія версій у списках SharePoint

Історія версій у списках SharePoint

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

Вибір шістнадцяткових кодів кольорів для звітів LuckyTemplates

Вибір шістнадцяткових кодів кольорів для звітів LuckyTemplates

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

Динамічний роздільник дат у LuckyTemplates із використанням таблиці Менделєєва

Динамічний роздільник дат у LuckyTemplates із використанням таблиці Менделєєва

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

Таблиці пропорцій і частот в Excel

Таблиці пропорцій і частот в Excel

Збирався зануритися в частотні таблиці в Excel, а також у таблиці пропорцій. Добре подивіться, що це таке і коли їх використовувати.

Як інсталювати DAX Studio та табличний редактор у LuckyTemplates

Як інсталювати DAX Studio та табличний редактор у LuckyTemplates

Дізнайтеся, як завантажити та інсталювати DAX Studio та Tabular Editor 3 і як налаштувати їх для використання в LuckyTemplates і Excel.

Візуалізація карти форми LuckyTemplates для просторового аналізу

Візуалізація карти форми LuckyTemplates для просторового аналізу

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

Фінансова звітність LuckyTemplates: розподіл результатів за шаблонами в кожному окремому рядку

Фінансова звітність LuckyTemplates: розподіл результатів за шаблонами в кожному окремому рядку

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

Вимірювання DAX у LuckyTemplates за допомогою розгалуження вимірювання

Вимірювання DAX у LuckyTemplates за допомогою розгалуження вимірювання

Створіть показники DAX у LuckyTemplates, використовуючи наявні показники або формули. Це те, що я називаю технікою розгалуження міри.