DATEINPERIOD

применяется:вычисляемый столбецвычисляемой таблицыизмерениевизуального вычисления

Примечание

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

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

Эта функция подходит для передачи в качестве фильтра функции CALCULATE. Используйте его для фильтрации выражения по стандартным интервалам даты, таким как дни, месяцы, кварталы или годы.

Синтаксис

DAX
DATESINPERIOD(<dates>, <start_date>, <number_of_intervals>, <interval>)

Параметры

Срок Определение
dates Столбец даты.
start_date Выражение даты.
number_of_intervals Целое число, указывающее количество интервалов для добавления или вычитания из дат.
interval Интервал, с помощью которого необходимо переместить даты. Значение интервала может быть одним из следующих: DAY, MONTH, QUARTERи YEAR

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

Таблица, содержащая один столбец значений даты.

Замечания

  • В наиболее распространенном случае использования dates является ссылкой на столбец даты помеченной таблицы дат.

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

  • Параметр interval является перечислением. Допустимые значения: DAY, MONTH, QUARTERи YEAR. Так как это перечисление, значения не передаются в виде строк. Поэтому не заключайте их в кавычки.

  • Возвращаемая таблица может содержать только даты, хранящиеся в столбце dates. Например, если столбец dates начинается с 1 июля 2017 года, а значение start_date — 1 июля 2016 года, возвращаемая таблица начнется с 1 июля 2017 года.

  • Эта функция не поддерживается для использования в режиме DirectQuery при использовании в вычисляемых столбцах или правилах безопасности на уровне строк (RLS).

Пример

В приведенной ниже определении меры продаж таблица использует функцию DATEINPERIOD для расчета выручки за предыдущий год (PY).

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

Примеры в этой статье можно использовать с примером модели Adventure Works DW 2020 Power BI Desktop. Сведения о получении модели см. в разделе пример модели DAX.

DAX
Revenue PY =
CALCULATE(
    SUM(Sales[Sales Amount]),
    DATESINPERIOD(
        'Date'[Date],
        MAX('Date'[Date]),
        -1,
        YEAR
    )
)

Рассмотрим, что отчет фильтруется по месяцам июня 2020 года. Функция MAX возвращается 30 июня 2020 г. Затем функция DATEINPERIOD возвращает диапазон дат от 1 июля 2019 г. до 30 июня 2020 г. Это год значений дат, начиная с 30 июня 2020 года за последний год.

функций аналитики времени (DAX)
функции даты и времени (DAX)
функции DATEBETWEEN (DAX)