[Документация Yandex Cloud](../../index.md) > [Yandex DataLens](../index.md) > Вычисляемые поля > Примеры использования функций > Функции для работы с временными рядами

# Функции для работы с временными рядами

В этом разделе описано, как использовать [функции временных рядов](../function-ref/time-series-functions.md) на примере функции [AGO](../function-ref/AGO.md). Эта функция позволяет получать значения показателя за прошедший или будущий период времени.

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

Для доступа к базе данных создайте прямое [подключение](../tutorials/data-from-ch-to-sql-chart.md#create-connection) к демонстрационной БД.

Создайте датасет на основе таблицы **MS_SalesFullTable**:

1. Для поля **Sales** выберите тип агрегации **Сумма**.
1. Добавьте в датасет [вычисляемые поля](../dataset/create-dataset.md#create-fields):

   * `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**

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

1. Создайте чарт — [столбчатая диаграмма](../visualization-ref/column-chart.md).
1. Перетащите измерение **Month** в секцию **X**.
1. Перетащите показатель **Sales delta** в секцию **Y**.

![image](../../_assets/datalens/solution-y-to-y/year-to-year-sales-chart.png)

**Пример 2**

В чарте показать динамику продаж по сравнению с предыдущим годом.

1. Создайте чарт — [линейная диаграмма](../visualization-ref/line-chart.md).
1. Перетащите показатель **Sales delta** в секцию **Y**.
1. В настройках поля **Sales delta** выберите размерность **Авто**.
1. В настройках оси **Y** для параметра **Форматирование оси** укажите **По первому полю на оси Y**.
1. Перетащите показатель **Changes** в секцию **Подписи**.

![image](../../_assets/datalens/solution-y-to-y/sales-dynamic-chart.png)

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

![image](../../_assets/datalens/solution-y-to-y/sales-dashboard.png)

_ClickHouse® является зарегистрированным товарным знаком [ClickHouse, Inc](https://clickhouse.com)._