Учебники

Функции DAX — Краткое руководство

Функции DAX — Введение

DAX обозначает D ata A- nalysis E x . DAX — это язык формул, представляющий собой набор функций, операторов и констант, которые можно использовать в формуле или выражении для вычисления и возврата одного или нескольких значений. DAX — это язык формул, связанный с моделью данных Microsoft Excel Power Pivot и Microsoft Power BI.

DAX не является языком программирования, однако это язык формул, который позволяет пользователям определять пользовательские вычисления в вычисляемых столбцах и вычисляемых полях (также называемых мерами). DAX помогает вам создавать новую информацию из существующих данных в вашей модели данных. Формулы DAX позволяют выполнять моделирование данных, анализ данных и использовать результаты для составления отчетов и принятия решений.

Для более глубокого понимания DAX, обратитесь к учебнику — DAX в этой библиотеке учебников.

Что такое функция DAX?

Функция DAX — это встроенная функция на языке DAX, позволяющая вам выполнять различные действия с данными в таблицах в вашей модели данных.

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

Функции DAX играют важную роль в использовании DAX для моделирования данных и составления отчетов.

Функции Excel и DAX

Есть определенные сходства между функциями Excel и функциями DAX, а также есть определенные различия. Ниже приведены сходства и различия между функциями Excel и DAX.

Сходства между функциями Excel и DAX

  • Некоторые функции DAX имеют то же имя и общее поведение, что и функции Excel.

  • DAX имеет функции поиска, которые аналогичны функциям поиска в массиве и векторе в Excel.

Некоторые функции DAX имеют то же имя и общее поведение, что и функции Excel.

DAX имеет функции поиска, которые аналогичны функциям поиска в массиве и векторе в Excel.

Различия между функциями Excel и DAX

  • Функции DAX были изменены, чтобы принимать различные типы входов, и некоторые функции DAX могут возвращать другой тип данных. Следовательно, вы должны понимать использование этих функций отдельно, хотя они имеют одинаковые имена.

  • Вы не можете использовать функции DAX в формуле Excel или использовать функции Excel в формуле DAX без необходимых изменений.

  • Функции Excel принимают ссылку на ячейку или диапазон ячеек в качестве ссылки. Функции DAX никогда не принимают ссылку на ячейку или диапазон ячеек в качестве ссылки, а вместо этого принимают столбец или таблицу в качестве ссылки.

  • Функции даты и времени в Excel возвращают целое число, представляющее дату в виде серийного номера. Функции даты и времени DAX возвращают тип данных datetime, который находится в DAX, но не в Excel.

  • В Excel нет функций, возвращающих таблицу, но некоторые функции могут работать с массивами. Многие из функций DAX могут легко ссылаться на полные таблицы и столбцы, чтобы выполнять вычисления и возвращать таблицу или столбец значений. Эта способность DAX добавляет мощность в Power Pivot, Power View и Power BI, где используется DAX.

  • Функции поиска DAX требуют установления связи между соответствующими таблицами.

Функции DAX были изменены, чтобы принимать различные типы входов, и некоторые функции DAX могут возвращать другой тип данных. Следовательно, вы должны понимать использование этих функций отдельно, хотя они имеют одинаковые имена.

Вы не можете использовать функции DAX в формуле Excel или использовать функции Excel в формуле DAX без необходимых изменений.

Функции Excel принимают ссылку на ячейку или диапазон ячеек в качестве ссылки. Функции DAX никогда не принимают ссылку на ячейку или диапазон ячеек в качестве ссылки, а вместо этого принимают столбец или таблицу в качестве ссылки.

Функции даты и времени в Excel возвращают целое число, представляющее дату в виде серийного номера. Функции даты и времени DAX возвращают тип данных datetime, который находится в DAX, но не в Excel.

В Excel нет функций, возвращающих таблицу, но некоторые функции могут работать с массивами. Многие из функций DAX могут легко ссылаться на полные таблицы и столбцы, чтобы выполнять вычисления и возвращать таблицу или столбец значений. Эта способность DAX добавляет мощность в Power Pivot, Power View и Power BI, где используется DAX.

Функции поиска DAX требуют установления связи между соответствующими таблицами.

Соглашения об именовании параметров DAX

У DAX есть стандартные имена параметров, чтобы облегчить использование и понимание функций DAX. Кроме того, вы можете использовать определенные префиксы для имен параметров. Если префикс достаточно ясен, вы можете использовать сам префикс в качестве имени параметра.

Необходимо понимать соглашения об именах параметров DAX, чтобы понимать синтаксис функций DAX и правильно использовать значения для необходимых параметров.

Подробнее см. Главу « Соглашения об именах параметров DAX» .

Типы функций DAX

DAX поддерживает следующие типы функций.

  • Табличные функции DAX
    • Функции фильтра DAX
    • Функции агрегации DAX
    • DAX Time Intelligence Функции
  • Функции даты и времени DAX
  • Информационные функции DAX
  • DAX логические функции
  • DAX Math и Trig Функции
  • DAX Другие функции
  • DAX родительские и дочерние функции
  • Статистические функции DAX
  • Текстовые функции DAX
  • DAX Описание Структура Функции

Табличные функции DAX

Многие функции DAX принимают таблицы в качестве входных или выходных таблиц или выполняют обе функции. Эти функции DAX называются табличными функциями DAX. Поскольку таблица может иметь один столбец, функции с табличными значениями DAX также принимают отдельные столбцы в качестве входных данных. У вас есть следующие типы табличных функций DAX —

  • Функции агрегации DAX
  • Функции фильтра DAX
  • Интеллектуальные функции DAX Time

Функции агрегации DAX

Функции агрегации DAX агрегируют любое выражение по строкам таблицы и полезны в вычислениях.

Подробнее см. Главу « Функции агрегирования DAX» .

Функции фильтра DAX

Функции фильтра DAX возвращают столбец или таблицу или значения, относящиеся к текущей строке. Вы можете использовать функции DAX Filter для возврата определенных типов данных, поиска значений в связанных таблицах и фильтрации по связанным значениям. Функции DAX Lookup работают с использованием таблиц и связей между ними. Функции фильтра DAX позволяют вам управлять контекстом данных для создания динамических вычислений.

Подробнее см. Главу « Функции фильтра DAX» .

DAX Time Intelligence Функции

Функции DAX Time Intelligence возвращают таблицу дат или используют таблицу дат для расчета агрегации. Эти функции DAX помогают создавать расчеты, которые отвечают потребностям анализа бизнес-аналитики, позволяя вам манипулировать данными с использованием периодов времени, включая дни, месяцы, кварталы и годы.

Подробнее см. Главу «Функции DAX Time Intelligence» .

Функции даты и времени DAX

Функции даты и времени DAX аналогичны функциям даты и времени в Excel. Однако функции DAX Date и Time основаны на типе данных datetime DAX.

Подробнее см. Главу « Функции даты и времени DAX» .

Информационные функции DAX

Информационные функции DAX просматривают ячейку или строку, предоставленные в качестве аргумента, и сообщают, соответствует ли значение ожидаемому типу.

Подробнее см. Главу « Информационные функции DAX» .

DAX логические функции

Логические функции DAX возвращают информацию о значениях в выражении. Например, функция DAX TRUE позволяет узнать, возвращает ли вычисляемое выражение значение TRUE.

Подробнее см. Главу « Логические функции DAX» .

DAX Math и Trig Функции

Математические и тригонометрические функции DAX очень похожи на математические и тригонометрические функции Excel.

Подробнее см. Главу « Функции DAX Math и Trig» .

DAX родительские и дочерние функции

Родительские и дочерние функции DAX полезны для управления данными, которые представлены в иерархии «родитель / потомок» в модели данных.

Подробнее см. Главу « Родительские и дочерние функции DAX» .

Статистические функции DAX

Статистические функции DAX очень похожи на статистические функции Excel.

Подробнее см. Главу « Статистические функции DAX» .

Текстовые функции DAX

Функции DAX Text работают с таблицами и столбцами. С помощью функций DAX Text вы можете вернуть часть строки, найти текст в строке или объединить строковые значения. Вы также можете управлять форматами дат, времени и чисел.

Подробнее см. Главу « Функции DAX-текста» .

DAX Другие функции

Эти функции DAX выполняют уникальные действия, которые не могут быть определены ни одной из категорий, к которым относится большинство других функций.

Подробнее см. Главу « Другие функции DAX» .

DAX Функция Описание Структура

Если вам нужно использовать функцию DAX в формуле DAX, вам нужно понять функцию в деталях. Вы должны знать синтаксис функции, типы параметров, что возвращает функция и т. Д.

В этом руководстве общая структура описания функции используется для всех функций DAX, чтобы вы могли эффективно читать и интерпретировать функции DAX.

Подробнее см. Главу « Структура описания функции DAX» .

Соглашения об именовании параметров DAX

У DAX есть стандартные имена параметров, чтобы облегчить использование и понимание функций DAX. Кроме того, вы можете использовать определенные префиксы для имен параметров. Если префикс достаточно ясен, вы можете использовать сам префикс в качестве имени параметра.

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

Имена параметров

Ниже приведены имена стандартных параметров DAX —

Sr.No. Имя параметра и описание
1

выражение

Любое выражение DAX, которое возвращает одно скалярное значение, где выражение должно оцениваться несколько раз (для каждой строки / контекста).

2

значение

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

3

Таблица

Любое выражение DAX, которое возвращает таблицу данных.

4

TABLENAME

Имя существующей таблицы с использованием стандартного синтаксиса DAX. Это не может быть выражением.

5

ColumnName

Имя существующего столбца с использованием стандартного синтаксиса DAX, как правило, полностью уточнено. Это не может быть выражением.

6

название

Строковая константа, которая будет использоваться для предоставления имени нового объекта.

7

порядок

Перечисление, используемое для определения порядка сортировки.

8

связи

Перечисление, используемое для определения обработки значений связывания.

9

тип

Перечисление, используемое для определения типа данных для PathItem и PathItemReverse.

выражение

Любое выражение DAX, которое возвращает одно скалярное значение, где выражение должно оцениваться несколько раз (для каждой строки / контекста).

значение

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

Таблица

Любое выражение DAX, которое возвращает таблицу данных.

TABLENAME

Имя существующей таблицы с использованием стандартного синтаксиса DAX. Это не может быть выражением.

ColumnName

Имя существующего столбца с использованием стандартного синтаксиса DAX, как правило, полностью уточнено. Это не может быть выражением.

название

Строковая константа, которая будет использоваться для предоставления имени нового объекта.

порядок

Перечисление, используемое для определения порядка сортировки.

связи

Перечисление, используемое для определения обработки значений связывания.

тип

Перечисление, используемое для определения типа данных для PathItem и PathItemReverse.

Префикс имен параметров или использование только префикса

Вы можете указать имя параметра с префиксом —

  • Префикс должен описывать, как используется аргумент.

  • Префикс должен быть таким, чтобы избежать неоднозначного чтения параметра.

Префикс должен описывать, как используется аргумент.

Префикс должен быть таким, чтобы избежать неоднозначного чтения параметра.

Например,

  • Result_ColumnNameуказывает на существующий столбец, используемый для получения значений результата в функции DAX LOOKUPVALUE ().

  • Search_ColumnNameуказывает на существующий столбец, используемый для поиска значения в функции DAX LOOKUPVALUE ().

Result_ColumnNameуказывает на существующий столбец, используемый для получения значений результата в функции DAX LOOKUPVALUE ().

Search_ColumnNameуказывает на существующий столбец, используемый для поиска значения в функции DAX LOOKUPVALUE ().

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

Например, рассмотрим дату (год_значения, месяц_значения, день_значения) . Вы можете опустить параметр имя — значение, которое повторяется трижды, и записать его как DATE (год, месяц, день). Как видно, используя только префиксы, функция более читабельна. Тем не менее, иногда имя параметра и префикс должны присутствовать для ясности.

Например, рассмотрим Year_columnName . Имя параметра — ColumnName, а префикс — Год. И то, и другое требуется, чтобы пользователь понял, что параметр требует ссылки на существующий столбец лет.

Функции DAX — структура описания

Если вам нужно использовать функцию DAX в формуле DAX, вам нужно понять функцию в деталях. Вы должны знать синтаксис функции, типы параметров, что возвращает функция и т. Д.

Чтобы вы могли понять, как читать и интерпретировать функции DAX, в этом руководстве используется единая структура описания функций.

  • Различные типы функций DAX сгруппированы по названию типа функций DAX в виде глав.

  • В каждой из этих глав дается краткое описание полезности соответствующего типа функций DAX.

  • Краткое описание будет сопровождаться списком функций DAX, соответствующих этой главе (Тип / Категория функций DAX).

  • Каждое имя функции DAX связано с деталями функции DAX, которые имеют следующую структуру описания функции DAX —

    • Описание
    • Синтаксис
    • параметры
    • Возвращаемое значение
    • замечания
    • пример

Различные типы функций DAX сгруппированы по названию типа функций DAX в виде глав.

В каждой из этих глав дается краткое описание полезности соответствующего типа функций DAX.

Краткое описание будет сопровождаться списком функций DAX, соответствующих этой главе (Тип / Категория функций DAX).

Каждое имя функции DAX связано с деталями функции DAX, которые имеют следующую структуру описания функции DAX —

Следующие разделы объясняют каждый из этих заголовков, которые появляются в каждом объяснении функции DAX.

Описание

В разделе «Описание» вы узнаете, что такое функция DAX и где ее можно использовать.

Если функция DAX введена в Excel 2016, то же самое будет упомянуто здесь. (Остальные функции DAX существуют в Excel 2013.)

Синтаксис

В разделе Синтаксис вы узнаете точное название функции и соответствующие параметры.

  • Имя DAX-функции указывается заглавными буквами.

  • За именем функции DAX следует открывающая скобка.

  • Каждый параметр соответствует стандартному соглашению об именах параметров DAX и заключен в угловые скобки.

  • Если параметр является необязательным, он дополнительно заключается в квадратные скобки.

  • Параметры разделяются запятыми.

  • Эллипсы… используются для отображения необязательного количества повторений параметров.

  • Синтаксис функции заканчивается закрывающей скобкой.

Имя DAX-функции указывается заглавными буквами.

За именем функции DAX следует открывающая скобка.

Каждый параметр соответствует стандартному соглашению об именах параметров DAX и заключен в угловые скобки.

Если параметр является необязательным, он дополнительно заключается в квадратные скобки.

Параметры разделяются запятыми.

Эллипсы… используются для отображения необязательного количества повторений параметров.

Синтаксис функции заканчивается закрывающей скобкой.

пример

Синтаксис

параметры

В разделе «Параметры» каждый из параметров определенной функции DAX указан в таблице с ее описанием. Например, параметры приведенного выше примера функции DAX SELECTCOLUMNS перечислены в следующей таблице.

Sr.No. Параметр и описание
1

Таблица

Таблица или выражение DAX, которое возвращает таблицу.

2

название

Имя, данное столбцу, заключено в двойные кавычки.

3

scalar_expression

DAX-выражение, которое возвращает скалярное значение, такое как ссылка на столбец, целое число или строковое значение.

Таблица

Таблица или выражение DAX, которое возвращает таблицу.

название

Имя, данное столбцу, заключено в двойные кавычки.

scalar_expression

DAX-выражение, которое возвращает скалярное значение, такое как ссылка на столбец, целое число или строковое значение.

Возвращаемое значение

В разделе «Возвращаемое значение» вы узнаете, какое значение будет возвращать функция DAX, и ее тип данных.

замечания

В разделе «Примечания» вы узнаете о любой дополнительной информации, которая вам необходима для использования функции DAX. Вы также поймете возможные ошибки и причины.

пример

Пример использования функции DAX приведен в этом разделе.

Примечание. Когда вы пишете функции DAX со значениями данных для параметров, вы будете следовать соглашениям об именах, приведенным ниже:

  • Имя таблицы указывается так, как оно указано в модели данных. Например, продажи.

  • Имя столбца указывается так, как оно отображается в модели данных в квадратных скобках.

    Например, [Объем продаж]

    • Рекомендуется использовать полные имена для столбцов, т. Е. К имени столбца должен предшествовать имя таблицы, в которой оно содержится.

      Например, Продажи [Объем продаж]

    • Если имя таблицы содержит пробелы, оно должно быть заключено в одинарные кавычки.

      Например, «Восточные продажи» [Объем продаж]

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

Имя таблицы указывается так, как оно указано в модели данных. Например, продажи.

Имя столбца указывается так, как оно отображается в модели данных в квадратных скобках.

Например, [Объем продаж]

Рекомендуется использовать полные имена для столбцов, т. Е. К имени столбца должен предшествовать имя таблицы, в которой оно содержится.

Например, Продажи [Объем продаж]

Если имя таблицы содержит пробелы, оно должно быть заключено в одинарные кавычки.

Например, «Восточные продажи» [Объем продаж]

Функция DAX может возвращать столбец или таблицу значений, и в этом случае ее необходимо использовать в качестве параметра другой функции DAX, для которой требуется столбец или таблица.

Функции DAX — агрегация

Функции агрегации DAX агрегируют любое выражение по строкам таблицы и полезны в вычислениях.

Ниже приведены функции агрегации DAX.

Функции DAX — Фильтр

Вы можете использовать функции DAX Filter для возврата определенных типов данных, поиска значений в связанных таблицах и фильтрации по связанным значениям. Функции поиска работают с использованием таблиц и связей между ними. Функции фильтра позволяют вам управлять контекстом данных для создания динамических вычислений.

Ниже приведены функции фильтра DAX.

Функции DAX — Time Intelligence

Функции DAX Time Intelligence помогают создавать расчеты, отвечающие потребностям анализа Business Intelligence, позволяя вам манипулировать данными с использованием периодов времени, включая дни, месяцы, кварталы и годы.

Ниже приведены функции DAX Time Intelligence.

Функции DAX — дата и время

Функции даты и времени DAX аналогичны функциям даты и времени в Excel. Однако функции даты и времени DAX основаны на типе данных DAX datetime.

Ниже приведены функции даты и времени DAX.

Функции DAX — Информация

Информационные функции DAX смотрят на значение или столбец, предоставленный в качестве аргумента, и сообщают, соответствует ли значение ожидаемому типу.

Ниже приведены информационные функции DAX —

Функции DAX — логические

Логические функции DAX возвращают логические значения (ИСТИНА / ЛОЖЬ) на основе логических операций, выполняемых с соответствующими параметрами.

Ниже приведены логические функции DAX —

Математические и тригонометрические функции

Математические и тригонометрические функции DAX очень похожи на математические и тригонометрические функции Excel.

Ниже приведены функции DAX Math и Trig —

Функции DAX — родитель и ребенок

Родительские и дочерние функции DAX полезны для управления данными, которые представлены в иерархии «родитель / потомок» в модели данных.

Ниже приведены родительские и дочерние функции DAX.

Функции DAX — статистические

Статистические функции DAX очень похожи на статистические функции Excel.

Ниже приведены статистические функции DAX —

Функции DAX — Текст

Функции DAX Text работают с таблицами и столбцами. С помощью функций DAX Text вы можете вернуть часть строки, найти текст в строке или объединить строковые значения. Вы также можете управлять форматами дат, времени и чисел.

Ниже приведены функции DAX Text —

Функции DAX — другое

Эти функции DAX выполняют уникальные действия, которые не могут быть определены ни одной из категорий, к которым относится большинство других функций DAX.

Ниже приведены другие функции DAX —