Co-authored-by: Anna <42538400+adevyatova@users.noreply.github.com>
2.9 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 │
└─────────────────────────────────────┘