0
Ваша корзина

Отличие функции AGO() от AT_DATE() на конкретном примере. Функции DataLens для начинающих.

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

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

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

Сегодня давайте поговорим о двух с виду очень похожих функциях AGO() и AT_DATE(). У них даже синтаксис почти одинаковый. Но все же почему-то это две разные функции. И сегодня я покажу наглядно на примере как работает каждая из них и зачем они нужны.

И рассмотрим это на вот таком вот простом примере с минимумом данных: ежедневные срезы неких сумм.

Функция AGO()

И давайте начнем с функции AGO(). Что же она делает.

Синтаксис

AGO( measure, date_dimension [ , unit [ , number ] ] )

Описание

Вычисляет значение показателя measure для даты/времени с указанным смещением.
Аргумент date_dimension задает измерение, вдоль которого делается смещение.
Аргумент number задает размер смещения в единицах аргумента unit. Задается целым числом. Может принимать отрицательные значения. Значение по умолчанию равно 1.
Аргумент unit задает единицу измерения для number. Принимает следующие значения:

  • "year" — год;
  • "month" — месяц;
  • "week" — неделя;
  • "day" — день (значение по умолчанию);
  • "hour" — час;
  • "minute" — минута;
  • "second" — секунда.

Возможен вариант использования AGO( measure, date_dimension, number ). В этом случае аргумент unit принимает значение "day".

Давайте в нашем условном примере создадим новое поле с этой функцией и посмотрим данные с размерностью неделя. Заполняем все показатели: агрегация суммы, по полю с датой и размерность неделя.

AGO(SUM([Сумма]),[Дата], "week")

Теперь добавим это новое поле в таблицу и посмотрим, что получится.

А получилось у нас то, что суммы просто сместились на неделю вперед. По сути мы получили те же самые цифры, но со смещением. 

Функция AT_DATE()

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

Синтаксис

AT_DATE( measure, date_dimension, date_expr )

Описание

Вычисляет measure для даты/времени, заданных выражением date_expr. Позволяет получить показатель на начало или конец периода, или на конкретную дату.
Аргумент date_dimension задает измерение, вдоль которого делается смещение.

В качестве аргумента date_expr можно использовать:

  • конкретную дату;
  • функцию получения текущей даты TODAY();
  • функции для вычисления даты и времени.

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

AT_DATE(SUM([Сумма]),[Дата],DATETRUNC([Дата], "week"))

Но обратите внимание, что тут группировку по неделе мы задаем не просто словом week, а через функцию DATETRUNC(). Это единственное отличие.

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

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

Вывод

Итак, давайте подведем итог — чем же отличаются эти функции. 

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

А вот AT_DATE() хорошо подойдет для анализа показателей на конкретную дату. Например, по сравнению с началом/концом года, месяц или квартала.

Надеюсь, данный урок был вам полезен!

Более подробно о том, как именно сделать это, смотрите в подробном видеоуроке ниже.

Более подробно, как это сделать, можно посмотреть тут.

СПАСИБО
50 руб.
Ваш вклад в развитие блога.
Ваша поддержка поможет публиковать больше бесплатных уроков и видео.
ОТПРАВИТЬ
СПАСИБО
100 руб.
Ваш вклад в развитие блога.
Ваша поддержка поможет публиковать больше бесплатных уроков и видео.
ОТПРАВИТЬ

Задать вопросы и обсудить волнующие темы про аналитику данных теперь можно на нашем форуме.

Если вам понравился урок, подписывайтесь на канал или группу и ставьте лайки. А также пишите в комментариях свои кейсы или вопросы. Самые интересные мы обязательно разберем.

Мы в социальных сетях

Поделиться

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *

Подпишись на новости!

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

А также на страницу ВКонтакте.

 


Он будет закрыт в 20 секунд