Перейти до основного
Підтримка
Вхід
Вхід за допомогою облікового запису Microsoft
Увійдіть або створіть обліковий запис.
Вітаємо,
Виберіть інший обліковий запис.
У вас є кілька облікових записів
Виберіть обліковий запис, за допомогою якого потрібно ввійти.
Вирази аналізу даних (DAX) у надбудові Power Pivot

Вирази аналізу даних (DAX) спочатку звучать трохи непросто, але не здавайте це ім'я в оману. Основи DAX дуже легко зрозуміти. Спершу слід з'ясувати, що DAX – це НЕ мова програмування. DAX – це мова формул. За допомогою DAX можна визначити настроювані обчислення для обчислюваних стовпців і для мір (також відомих як обчислювані поля). DAX містить деякі функції, які використовуються у Excel формулах, а також додаткові функції, призначені для роботи з реляційними даними та динамічного агрегування.

Докладні відомості про формули DAX

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

Проте формули DAX відрізняються такими важливими способами:

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

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

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

Де використовувати формули DAX

Формули можна створювати в Power Pivot обчислюваних c olumns або в обчислюванихf-результатах.

Обчислювані стовпці

Обчислюваний стовпець – це стовпець, який додається до наявної Power Pivot таблиці. Замість вставлення або імпорту значень у стовпець створюється формула DAX, яка визначає значення стовпців. Якщо додати таблицю Power Pivot до зведеної таблиці (або зведена діаграма), обчислюваний стовпець можна використовувати так само, як і будь-який інший стовпець даних.

Формули в обчислюваних стовпцях схожі на формули, створені у Excel. На відміну Excel, у таблиці не можна створити іншу формулу для різних рядків. Натомість формула DAX автоматично застосовується до всього стовпця.

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

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

Докладні відомості див. в описі обчислюваних стовпців у надбудові Power Pivot.

Міри

Міра – це формула, створена спеціально для використання у зведеній таблиці (або зведена діаграма), яка Power Pivot даних. Міри можуть базуватись на стандартних функціях агрегації, як-от COUNT або SUM, або ж за допомогою DAX можна визначити власну формулу. Міра використовується в області значень зведеної таблиці. Якщо потрібно розмістити обчислювані результати в іншій області зведеної таблиці, використовуйте натомість обчислюваний стовпець.

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

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

Докладні відомості див. в мірах у Надбудові Power Pivot.

Створення формул за допомогою рядка формул

Power Pivot, як-от Excel, є рядок формул, який полегшує створення й редагування формул і функції автозаповнення, щоб мінімізувати помилки введення та синтаксису.

Введення імені таблиці   Почніть вводити ім'я таблиці. Автозаповнення формул містить розкривний список із припустимими іменами, які починаються з цих букв.

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

Докладні відомості та інструкції з створення формул див. в статті Створення формул для обчислень у надбудові Power Pivot.

Підказки використання автозаповнення

Автозаповнення формул можна використовувати всередині наявної формули з вкладеними функціями. Текст безпосередньо перед місцем вставлення використовується для відображення значень у розкривному списку, а весь текст після місця вставлення залишається незмінним.

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

Power Pivot не додає закривну дужку функцій і не автоматично зіставляє дужки. Слід переконатися, що кожна функція синтактично правильна, ні ви не можете зберегти чи використати формулу. 

Використання кількох функцій у формулі

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

Багато функцій DAX призначено для використання лише як вкладені функції. Ці функції повертають таблицю, яку не можна зберегти безпосередньо в результаті; її має бути надано як вхідні дані для функції таблиці. Наприклад, для функцій SUMX, AVERAGEX і MINX усе має бути таблиця як перший аргумент.

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

Порівняння функцій DAX і Excel функцій

Бібліотека функцій DAX базується на Excel функцій, але бібліотеки мають багато відмінностей. У цьому розділі підсумовуватиме відмінності та подібності Excel функцій і DAX.

  • Багато функцій DAX мають таке саме ім'я та загальні Excel, що й функції, але змінені для введення даних різних типів, і в деяких випадках може бути повернуто інший тип даних. Зазвичай не можна використовувати функції DAX у Excel формулах або використовувати Excel у формулах Power Pivot без певних змін.

  • Функції DAX ніколи не ведуть посилання на клітинку або діапазон як посилання, а функції DAX натомість ведуть стовпець або таблицю як посилання.

  • Функції DAX для дати й часу повертають тип даних "Дата й час". На відміну від Excel, функції дати й часу повертають ціле число, яке представляє дату як числове значення.

  • Багато нових функцій DAX повертають таблицю значень або виводяться обчислення на основі таблиці значень як вхідні дані. Навпаки, Excel не має функцій, які повертають таблицю, але деякі функції можуть працювати з масивами. Можливість легко посилатися на повні таблиці та стовпці – це нова функція в Power Pivot.

  • DAX надає нові функції підстановки, подібні до масиву та векторних функцій підстановки в Excel. Проте функції DAX вимагають установлення зв'язку між таблицями.

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

Типи даних DAX

Ви можете імпортувати дані в модель Power Pivot даних із багатьох різних джерел, які можуть підтримувати різні типи даних. Коли ви імпортуєте або завантажуєте дані, а потім використовуєте їх в обчисленнях або зведених таблицях, дані буде перетворено на один із типів Power Pivot даних. Список типів даних див. в цій сторінці.

Тип даних таблиці – це новий тип даних у dax, який використовується як вхідний або вихідний результат для багатьох нових функцій. Наприклад, функція FILTER приймає таблицю як вхідні дані та виводить іншу таблицю, яка містить лише рядки, які відповідають умовам фільтрування. Об'єднувши функції таблиці з агрегатними функціями, можна виконувати складні обчислення над динамічно визначеними наборами даних. Докладні відомості див. в ційпрограмі.

Формули та реляційна модель

Вікно Power Pivot – це область, де можна працювати з кількома таблицями даних і з'єднувати таблиці в реляційній моделі. У цій моделі даних таблиці пов'язані між собою за допомогою зв'язків, які дають змогу створювати взаємозв'язки зі стовпцями в інших таблицях і створювати цікавіші обчислення. Наприклад, можна створювати формули, які підсумувати значення для пов'язаної таблиці, а потім зберегти це значення в одній клітинці. Або, щоб керувати рядками зв'язаної таблиці, можна застосувати фільтри до таблиць і стовпців. Докладні відомості див. в ційи: Зв'язки між таблицями в моделі даних.

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

Однак, оскільки формули можуть працювати з цілими таблицями та стовпцями, потрібно розробляти обчислення по-іншому, ніж у Excel.

  • Загалом формула DAX у стовпці завжди застосовується до всього набору значень у стовпці (не лише до кількох рядків або клітинок).

  • У таблицях Power Pivot має бути завжди однакова кількість стовпців у кожному рядку, а всі рядки в стовпці мають містити дані одного типу.

  • Коли таблиці з'єднуються за допомогою зв'язку, слід переконатися, що два стовпці, що використовуються як ключі, мають значення, здебільшого збігаються. Оскільки Power Pivot не забезпечують цілісність даних, ви можете мати в ключовому стовпці значення, що не збігаються, і все одно створити зв'язок. Однак наявність пустих або невідповідних значень може вплинути на результати формул і зовнішній вигляд зведених таблиць. Докладні відомості див. в ційи: Підстановки у формулах Power Pivot.

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

Оновлення результатів формул

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

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

Переобчислення – це процес оновлення результатів формул із відображенням будь-яких змін у формулах і відображенням цих змін в основних даних. Повторне обчислення може вплинути на продуктивність такими способами:

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

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

Виправлення неполадок із формулами

Помилки під час створення формул

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

Найпростіший із цих проблем – синтаксичні помилки. Зазвичай для них використовується відсутня дужка або кома. Відомості про синтаксис окремих функцій див. в довіднику з функцій DAX.

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

  • Формула посилається на неініційний стовпець, таблицю або функцію.

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

  • Формула передає функції неправильну кількість або тип параметрів.

  • Формула посилається на інший стовпець із помилкою, тому його значення неприпустимі.

  • Формула посилається на стовпець, який не оброблено, тобто містить метадані, але фактичні дані, які використовуються для обчислень.

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

Неправильні або незвичайні результати під час упорядковування або сортування значень стовпців

Упорядковування або сортування стовпця, який містить значення "Не число", може з'явитись неправильні або неочікувані результати. Наприклад, коли результат обчислення ділить 0 на 0, повертається результат NaN.

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

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

Сумісність із табличними моделями служб аналізу Analysis Services і режимом DirectQuery

Загалом формули DAX, які ви створюєте у програмі Power Pivot, повністю сумісні з табличними моделями служб аналізу Analysis Services. Однак якщо перенести модель Power Pivot до екземпляра служб аналізу Analysis Services, а потім розгорнути її в режимі DirectQuery, існують певні обмеження.

  • Деякі формули DAX можуть повертати інші результати, якщо розгорнути модель у режимі DirectQuery.

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

Докладні відомості див. в документації до табличного моделювання служб аналізу Analysis Services у SQL Server 2012 BooksOnline.

Потрібна додаткова довідка?

Потрібні додаткові параметри?

Ознайомтеся з перевагами передплати, перегляньте навчальні курси, дізнайтесь, як захистити свій пристрій тощо.

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

Чи ця інформація була корисною?

Наскільки ви задоволені якістю мови?
Що вплинуло на ваші враження?
Натиснувши кнопку "Надіслати", ви надасте свій відгук для покращення продуктів і служб Microsoft. Ваш ІТ-адміністратор зможе збирати ці дані. Декларація про конфіденційність.

Дякуємо за відгук!

×