DAX-Урок 1. Що таке DAX. Основні поняття.

Що таке DAX?

DAX - мова формул (розшифровується як Data Analysis eXpressions - вирази для аналізу даних), що була розроблена компанією Microsoft. Дана мова не являється самостійною, а призначена лише для автоматизації розрахунків в додатку PowerPivot для MS Excel.

Коротко кажучи, DAX - це формули для зведених таблиць. Більшість функцій DAX мають схожі імена та характеристики порівняно зі звичайними функціями Excel, проте можуть використовуватись лише в PowerPivot. Як відомо, звичайні Зведені таблиці можуть містити розрахункові поля, проте в цих полях можуть виконуватися лише прості арифметичні дії - додавання-віднімання та множення-ділення. Щоб збільшити функціонал розрахункових полів і був створений DAX. Вцілому, DAX не є складною мовою, як може здатися на перший погляд, потрібно лише зрозуміти принципи її роботи. Різниця між формулами Excel та формулами DAX полягає в тому, що в Excel ми оперуємо окремими комірками та діапазонами, а в DAX можемо звертатися лише до цілих таблиць та їхніх колонок.

Щоб працювати з DAX кодом, нам потрібно встановити PowerPivot для Excel 2010 або перейти на однойменну вкладку у Excel 2013.

Основні функції DAX

Як і в Excel функції DAX відносяться до певних категорій, а саме:

  • Функції фільтрів
  • Математичні функції
  • Статистичні функції
  • Логічні функції
  • Функції дати та часу
  • Текстові функції
  • Інформаційні функції
  • Розрахунки в PowerPivot

    В PowerPivot користувач може створювати розрахункові поля двох типів: Розрахункові стовпці та Міри.

    Розрахунковий стовпець - додатковий стовпець, який створюється користувачем в будь-якій таблиці, що завантажена в PowerPivot;

    Міра (Measure або Calculated field) - розрахункове поле в зведеній таблиці. Міра використовується в області Значення зведеної таблиці. Щоби розмістити розраховані результати в інші області зведеної таблиці, потрібно використовувати Розрахунковий стовпець.

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

    Контекст в формулах DAX

    В мові DAX присутнє також таке поняння як контекст, яке є дуже важливим для розуміння функіонування формул. На формули в PowerPivot можуть впливати фільтри, застосовані в зведеній таблиці, зв'язки між таблицями і фільтри, наявні у формулах. Контекст дозволяє виконувати динамічний аналіз. При побудові та усуненні неполадок у формулах важливо розуміти призначення контексту.

    Отже, в DAX існують три типи контексту: контекст фільтра, контекст рядка та контекст запиту.

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

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

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

    Статті по темі:

  • Додаток для розширення можливостей Зведених таблиць (PowerPivot)
  • DAX-Урок 2. Функція CALCULATE