Содержание статьи: (кликните, чтобы перейти к соответствующей части статьи):
- Функции (functions) в DAX
- Полный справочник основных функций (формул) DAX для Power BI и Excel (Powerpivot) на русском языке
- Подробное ВИДЕО «Правила форматирования DAX функций в Power BI и Power Pivot»
Приветствую Вас, дорогие друзья, с Вами Будуев Антон. Я часто встречаю вопросы про функции и формулы в DAX (Power BI и Power Pivot). Многие пишут эти вопросы и не всегда правильно понимают что является функциями, а что формулами.
На самом деле все просто — функции, это то, из чего состоит сам DAX, а формулы — это тот код, который мы пишем на основе функции в Power BI или Power Pivot.
В следующей статье мы подробно поговорим о том, как правильно писать и форматировать формулы, чтобы затем их можно было легко читать и понимать, а сейчас, в данной статье мы остановимся на функциях, проведем их общий обзор и для удобства составим справочник функций DAX в Power BI и Power Pivot.
Для Вашего удобства, рекомендую скачать «Справочник DAX функций для Power BI и Power Pivot» в PDF формате.
Если же в Ваших формулах имеются какие-то ошибки, проблемы, а результаты работы формул постоянно не те, что Вы ожидаете и Вам необходима помощь, то записывайтесь в бесплатный экспресс-курс «Быстрый старт в языке функций и формул DAX для Power BI и Power Pivot».
Да, и еще один момент, в рамках распродажи до 29 ноября 2024 г. у Вас имеется возможность приобрести большой, пошаговый видеокурс «DAX — это просто» со скидкой 50% (вместо 10000, всего за 5000 руб.)
В этом видеокурсе язык DAX преподнесен как простой конструктор, состоящий из нескольких блоков, которые имеют свое определенное, конкретное предназначение. Сочетая различными способами эти блоки, Вы, при помощи конструктора формул DAX, с легкостью сможете решать любые (простые или сложные) аналитические задачи.
Итак, пользуйтесь этой возможностью, заказывайте курс «DAX — это просто» со скидкой 50% (до 29 ноября 2024 г.): узнать подробнее
Функции (functions) в DAX
В прошлой статье, посвященной пониманию того, что такое DAX, я писал, что это функциональный язык, состоящий полностью из встроенных в него функций. И Вы, как его пользователь, не сможете создавать свои функции, но зато сможете создавать на основе этих встроенных функции свои формулы.
С одной стороны, мы имеем некую несвободу в связи с тем, что не можем создавать какие-то функции в DAX, но, с другой стороны, свобода сильно расширяется при составлении формул, ведь, создавая формулы, мы можем сочетать друг с другом встроенные функции, включая их многоуровневую вложенность друг в друга, и, на самом деле, в этом и заключается сила DAX.
Но, несмотря на то, что функции мы сами создавать не можем, год от года в DAX можно наблюдать появление совершенно новых функций. Так как разработчики не стоят на месте, постоянно улучшая и дорабатывая этот язык. Поэтому, DAX’ом год от года пользоваться все удобнее и интереснее.
В основе своей, все функции DAX можно разделить на несколько категорий:
- текстовые
- логические
- математические
- статистические (функции агрегирования)
- функции даты и времени
- функции логики операций с датой (time intelligence)
- фильтры
- табличные
- информационные
- и прочие, которые не попадают под категории выше
Сами функции в обязательном порядке состоят из 2 частей:
- ИМЯ (написанное большими буквами)
- Параметры, заключенные в круглые скобки ()
Параметров у функции может быть от 1 до нескольких, а в некоторых случаях параметров может и не быть вовсе, просто пустые круглые скобки.
В качестве параметров можно указывать:
- значение (числа, текст, даты)
- таблицы
- столбцы
- меры
- другие функции
Если в функции параметров несколько, то в русской версии DAX все параметры друг от друга отделяются точкой с запятой, в английской версии — просто запятой.
Общая схема функции DAX: ИМЯ (Параметр 1; Параметр 2; …; Параметр N)
Частая проблема и ошибка при написании кода DAX — это пропуск точки с запятой между параметрами или отсутствие закрывающей скобки. Чтобы избежать этих частых ошибок, в следующей статье мы с Вами разберем необязательные правила форматирования кода DAX, которые помогут не только избежать вышеперечисленных проблем, но и улучшить понимание и чтение всего кода.
Итак, ниже представлен справочник из основных функций DAX. По мере описания каждой из функций на нашем блоге, в справочнике ниже будут появляться активные гиперссылки на соответствующие статьи по подробному описанию функции.
Полный справочник основных функций (формул) DAX для Power BI и Excel (Powerpivot) на русском языке
Справочник ниже содержит список функции для Power BI и Excel (Powerpivot), состоящий из их названия и краткого описания на русском. Если на нашем блоге появляется отдельная статья с подробным описанием функции, то в справочнике ниже у соответствующей функции будет активная гиперссылка.
- Текстовые функции DAX:
- BLANK — пустое значение
- CONCATENATE и CONCATENATEX — объединение текста
- FORMAT — преобразование других типов данных в текстовый тип
- VALUE — преобразование текста в числовой тип данных
- FIND и SEARCH — поиск текста в составе другого текста
- FIXED — возвращает в текстовом формате округленное число
- LEFT, RIGHT и MID — выводят нужное количество символов
- LEN — количество символов
- LOWER и UPPER — управляют регистрами текста
- REPLACE и SUBSTITUTE — замена текста
- REPT — повтор текста
- TRIM — удаление пробелов
- EXACT — сравнение текстовых строк
- Логические функции DAX:
- Математические функции DAX:
- DIVIDE, QUOTIENT и MOD — деление
- SQRT и POWER — квадратный корень и возведение в степень
- ABS — абсолютное значение числа
- SIGN — знак числа
- EXP — число E, возведенное в степень
- FACT — факториал числа
- LN, LOG, LOG10 — логарифмы чисел
- PI — число Пи
- INT, TRUNC, ROUND, ROUNDDOWN, ROUNDUP, MROUND, FLOOR, CEILING, ISO.CEILING — округление чисел
- RAND и RANDBETWEEN — случайное число
- RADIANS — радианы
- Статистические (функции агрегирования DAX):
- SUM и SUMX — операции сложения
- MAX, MAXA и MAXX — вычисление максимумов
- MIN, MINA и MINX — вычисление минимумов
- AVERAGE, AVERAGEA и AVERAGEX — вывод среднего арифметического
- COUNT, COUNTA, COUNTX, COUNTAX, COUNTBLANK, DISTINCTCOUNT и COUNTROWS — подсчет количества (значений, ячеек, строк)
- Функции даты и времени в DAX:
- TODAY и NOW — сегодняшний день и сейчас (сегодняшний день + текущее время)
- DATE и DATEVALUE — возвращают даты в формате datetime и в текстовом формате
- YEAR, MONTH и DAY — возвращают год, месяц и день из значения даты
- TIME и TIMEVALUE — возвращают время в формате datetime и в текстовом формате
- HOUR, MINUTE и SECOND — возвращают час, минуты и секунды из значения времени
- WEEKDAY — номер дня недели
- WEEKNUM — номер недели в году
- YEARFRAC — доля указанного периода дат в целом году
- Функции логики операций с датой в DAX (time intelligence):
- CALENDARAUTO и CALENDAR — создание календаря
- DATESBETWEEN и DATESINPERIOD — ограничение столбцов из дат
- DATEADD и PARALLELPERIOD — создание столбца из дат, сдвинутых вперед или назад
- SAMEPERIODLASTYEAR — создание столбца дат, сдвинутого на 1 год назад
- PREVIOUSYEAR, PREVIOUSQUARTER, PREVIOUSMONTH и PREVIOUSDAY — создание столбца с датами предыдущего года, квартала, месяца и дня
- NEXTYEAR, NEXTQUARTER, NEXTMONTH и NEXTDAY — создание столбца с датами следующего года, квартала, месяца и дня
- DATESYTD, DATESQTD и DATESMTD — создание столбца из дат от начала года, квартала или месяца до текущей даты
- TOTALYTD, TOTALQTD и TOTALMTD — вычисляет выражение от начала года, квартала или месяца до текущей даты
- CLOSINGBALANCEYEAR, CLOSINGBALANCEQUARTER и CLOSINGBALANCEMONTH — вычисляет выражение на последнюю дату года, квартала или месяца
- OPENINGBALANCEMONTH, OPENINGBALANCEQUARTER и OPENINGBALANCEYEAR — вычисляет выражение на первую дату года, квартала или месяца
- ENDOFYEAR, ENDOFQUARTER и ENDOFMONTH — возвращает последний день года, квартала или месяца
- STARTOFYEAR, STARTOFQUARTER и STARTOFMONTH — возвращает первый день года, квартала или месяца
- FIRSTDATE и LASTDATE — возвращают первую (последнюю) известные даты
- EOMONTH и EDATE — возвращают дату с определенным отступом от заданной даты
- Функции фильтров в DAX:
- CALCULATE и CALCULATETABLE — вычисляют выражение (табличное выражение) в контексте фильтров, заданных в параметрах
- FILTER — возвращает отфильтрованную таблицу по заданным фильтрам
- ALL, ALLEXCEPT, ALLSELECTED и ALLNOBLANKROW — удаление фильтров с таблиц или столбцов
- VALUES и DISTINCT — создание таблицы с одним столбцом из уникальных значений исходной таблицы
- ISONORAFTER — возвращает все строки, которые соответствуют условиям, заданным в параметрах
- LOOKUPVALUE — поиск по строкам и вывод значения из столбца по найденной строке
- RELATED — вывод связанных значений из другой таблицы по связи «Многие к одному»
- RELATEDTABLE — возвращает связанную таблицу значений из другой таблицы по связи «Один ко многим»
- Табличные функции DAX:
- ADDCOLUMNS — добавляет столбец к существующей таблице
- DATATABLE — возвращает таблицу с нужными данными (создание таблицы «с нуля»)
- SUMMARIZE, SUMMARIZECOLUMNS и GROUPBY — создание сводной таблицы с итогами по группам
- ROW — создание таблицы из одной строки с итогами исходной таблицы
- TOPN — создание таблицы из первых N строк исходной таблицы
- EXCEPT, INTERSECT и UNION — создание таблицы на основе объединения двух или более исходных таблиц
- NATURALINNERJOIN и NATURALLEFTOUTERJOIN — создание таблицы на основе объединения двух исходных таблиц по внутренней связи в модели данных
- GENERATESERIES — создание таблицы последовательного ряда чисел
- CROSSJOIN, GENERATE и GENERATEALL — создание таблиц из всех пересечений (декартовое произведение) строк других таблиц, входящих в параметры
- Информационные функции DAX:
- ISBLANK — проверка на пустое значение
- ISNUMBER и ISEVEN — проверка на числовое значение
- ISTEXT и ISNONTEXT — проверка на текстовое и нетекстовое значение
- ISERROR — проверка на ошибку
- ISLOGICAL — проверка на логическое значение
- HASONEVALUE и HASONEFILTER — проверка на одно отфильтрованное значение прямыми или косвенными фильтрами
- ISCROSSFILTERED и ISFILTERED — проверка столбца на наличие или отсутствие прямых или кросс фильтров
- Прочие функции DAX:
- FIRSTNONBLANK и LASTNONBLANK — возвращают первое (последнее) известное значение в рамках непустого результата вычисления выражения
- EARLIER — возвращает значение столбца на предыдущих уровнях контекста строки
- VAR и RETURN — создание переменных в DAX
- RANKX — возвращает ранг числа для каждой строки в столбце чисел
- ERROR — выводит сообщение с пользовательским текстом ошибки
На этом, в этой статье все, переходите к следующей статье, где мы обсудим правила форматирования кода DAX в Power BI и Power Pivot, которые Вам помогут писать, читать и понимать код легко и быстро.
Подробное ВИДЕО «Правила форматирования DAX функций в Power BI и Power Pivot»»
Ссылки из видео:
1) [Регистрируйтесь в бесплатном экспресс курсе] Быстрый старт в языке функций и формул DAX для Power BI и Power Pivot: зарегистрироваться
2) [Скачивайте PDF] Справочник DAX функций для Power BI и Power Pivot на русском языке: скачать
Друзья, хотите изучить полный курс по языку DAX для Power BI и Power Pivot
со скидкой 50% вместо 10000 всего за 5000 р.?
акция действует до 29 ноября
Узнать все подробности об этом курсе, а также заказать его со скидкой 50% всего за 5000 руб. Вы можете на странице курса, кликнув по кнопке ниже (до 29 ноября):
Пожалуйста, оцените статью:
Успехов Вам, друзья!
С уважением, Будуев Антон.
Проект «BI — это просто»
Если у Вас появились какие-то вопросы по материалу данной статьи, задавайте их в комментариях ниже. Я Вам обязательно отвечу. Да и вообще, просто оставляйте там Вашу обратную связь, я буду очень рад.
Также, делитесь данной статьей со своими знакомыми в социальных сетях, возможно, этот материал кому-то будет очень полезен.
Понравился материал статьи?
Добавьте эту статью в закладки Вашего браузера, чтобы вернуться к ней еще раз. Для этого, прямо сейчас нажмите на клавиатуре комбинацию клавиш Ctrl+D