ClickHouse/docs/ru/sql-reference/aggregate-functions/reference/deltasumtimestamp.md
sevirov 3c1aaba9f3
Update docs/ru/sql-reference/aggregate-functions/reference/deltasumtimestamp.md
Co-authored-by: Anna <42538400+adevyatova@users.noreply.github.com>
2021-05-12 21:27:10 +03:00

2.8 KiB

toc_priority
141

deltaSumTimestamp

Прибавляет разницу между последовательными строками. Если разница отрицательна — она будет проигнорирована.

Эта функция предназначена в первую очередь для материализованных представлений, упорядоченных по некоторому временному бакету согласно timestamp, например, по бакету toStartOfMinute. Строки в таком материализованном представлении будут иметь одинаковый timestamp. Невозможно, чтобы они были объединены в "правом" порядке. Эта функция отслеживает timestamp значений, которые она видит. Поэтому можно правильно упорядочить состояния во время слияния.

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

Синтаксис

deltaSumTimestamp(value, timestamp)

Аргументы

  • value — входные значения, должны быть типа Integer, или Float, или Date, или DateTime.
  • timestamp — параметр для упорядочивания значений, должен быть типа Integer или Float или Date или DateTime.

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

  • Накопленная разница между последовательными значениями, упорядоченными по параметру timestamp.

Тип: Integer, или Float, или Date, или DateTime.

Пример

Запрос:

SELECT deltaSumTimestamp(value, timestamp) 
FROM (SELECT number AS timestamp, [0, 4, 8, 3, 0, 0, 0, 1, 3, 5][number] AS value FROM numbers(1, 10));

Результат:

┌─deltaSumTimestamp(value, timestamp)─┐
│                                  13 │
└─────────────────────────────────────┘