YEAR, ​QUARTER, ​MONTH, ​WEEK, ​DAY

YEAR

Возвращает год даты в виде четырехзначного целого числа.

Синтаксис

YEAR(<дата>)

где <дата> – столбец, содержащий даты, либо дата в текстовом или datetime формате.

QUARTER

Возвращает число от 1 (январь-март) до 4 (октябрь-декабрь), представляющее квартал.

Синтаксис

QAURTER(<дата>)

где <дата> – столбец, содержащий даты, либо дата в текстовом или datetime формате.

MONTH

Возвращает число от 1 (январь) до 12 (декабрь), представляющее месяц.

Синтаксис

MONTH(<дата>)

где <дата> — столбец, содержащий даты, либо дата в текстовом или datetime форматах.

WEEKNUM

Возвращает номер недели года (относительно начала года).

Синтаксис

WEEKNUM (дата; начало недели)

где

  • дата – дата в формате datetime;

  • начало недели1, если неделя начинается с воскресенья (по умолчанию); 2, если неделя начинается с понедельника.

DAY

Возвращает число от 1 до 31, представляющее день месяца.

Синтаксис

DAY(<дата>)

где <дата> – столбец, содержащий даты, либо дата в текстовом или datetime формате.

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

Примеры

Пример 1

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

Продажи за седьмой месяц =​ CALCULATE (​ SUM ( 'Факты'[salesamount] ),​ FILTER ( 'Факты', MONTH ( 'Факты'[datekey] ) = 7 )​ )

где

FILTER ( 'Факты', MONTH ( 'Факты'[datekey] ) = 7 ) ограничивает строки таблицы 'Факты' только теми, где месяц из столбца 'Факты'[datekey] равен 7 (то есть июль).

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

Пример 2

Предположим, вы хотите вычислить общую сумму продаж с учетом скидки за каждый пятый день месяца, так как в эти дни применяется скидка в размере 20%.

Для этого можно воспользоваться следующей формулой:

Каждый пятый день месяца распродажа =​ SUMX (​ 'Факты',​ IF (​ DAY ( 'Факты'[datekey] ) = 5,​ 'Факты'[salesamount] * 0.8,​ 'Факты'[salesamount]​ )​ )

где

DAY('Факты'[datekey]) = 5 возвращает TRUE, если день даты равен 5, и FALSE в противном случае. Если условие выполняется (день равен 5), то к значению продаж ('Факты'[salesamount]) применяется скидка 20% (* 0.8). Если условие не выполняется, то просто берется значение продаж без изменений.

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


Смотрите также

Моделирование данных с помощью DAX
Поддерживаемые функции DAX
Математические операторы
Примеры

Нужна дополнительная помощь?

Свяжитесь с технической поддержкой.