Функции для работы с временными рядами
В этом разделе описано, как использовать функции временных рядов на примере функции AGO. Эта функция позволяет получать значения показателя за прошедший или будущий период времени.
В качестве источника будет использована демонстрационная база данных ClickHouse® с информацией о продажах товаров в сети московских магазинов.
Для доступа к базе данных создайте прямое подключение к демонстрационной БД.
Создайте датасет на основе таблицы MS_SalesFullTable:
-
Для поля Sales выберите тип агрегации Сумма.
-
Добавьте в датасет вычисляемые поля:
Monthс формулойDATETRUNC([OrderDatetime], "month"). Поле отображает округленное до месяца значение даты продажи.Sales last yearс формулойAGO([Sales], [Month], "year", 1 BEFORE FILTER BY [OrderDatetime]). Формула позволяет получить значение показателя Sales со смещением по измерению Month на один год. АргументBEFORE FILTER BYуказывает, что функция вычисляется до применения в чарте фильтрации по полю OrderDatetime.Sales deltaс формулой[Sales]-[Sales last year]. Поле отображает изменение суммы продаж по сравнению с предыдущим годом.Sales dynamicsс формулой([Sales] - [Sales last year]) / [Sales last year]. Поле отображает динамику изменения суммы продаж по сравнению с предыдущим годом.Changesс формулойIF([Sales dynamics] > 0, CONCAT("▲", CEILING([Sales dynamics] * 100), "%"), CONCAT("▼", CEILING([Sales dynamics] * 100), "%")). Если динамика продаж положительная, поле отображает значок▲и изменение суммы продаж в процентах. Иначе, поле отображает значок▼и изменение суммы продаж в процентах.
Созданное с применением временной функции AGO поле Sales last year и производные от него поля можно использовать при создании чартов для сравнения изменений продаж по годам.
Пример 1
В чарте вывести показатели увеличения продаж по сравнению с предыдущим годом.
- Создайте чарт — столбчатая диаграмма.
- Перетащите измерение Month в секцию X.
- Перетащите показатель Sales delta в секцию Y.

Пример 2
В чарте показать динамику продаж по сравнению с предыдущим годом.
- Создайте чарт — линейная диаграмма.
- Перетащите показатель Sales delta в секцию Y.
- В настройках поля Sales delta выберите размерность Авто.
- В настройках оси Y для параметра Форматирование оси укажите По первому полю на оси Y.
- Перетащите показатель Changes в секцию Подписи.

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

ClickHouse® является зарегистрированным товарным знаком ClickHouse, Inc