> ## Documentation Index
> Fetch the complete documentation index at: https://private-7c7dfe99-mintlify-8a08bda2.mintlify.site/llms.txt
> Use this file to discover all available pages before exploring further.

> 累加连续行之间的差值。如果差值为负， 则会忽略该差值。

# deltaSumTimestamp

<div id="deltaSumTimestamp">
  ## deltaSumTimestamp
</div>

引入版本：v21.6.0

对连续行之间的差值求和。
如果差值为负，则会被忽略。

此函数主要用于按某个与时间 bucket 对齐的时间戳排序来存储数据的 [materialized views](/zh/reference/statements/create/view#materialized-view)，例如 `toStartOfMinute` bucket。
由于这类 materialized view 中的行都具有相同的时间戳，如果不存储原始的、未经取整的时间戳值，就无法按正确顺序对它们进行合并。
`deltaSumTimestamp` 函数会跟踪它处理过的值的原始 `timestamp`，因此在合并 parts 时，函数的值 (状态) 能够被正确计算。

要计算有序集合中的 delta sum，你只需使用 [`deltaSum`](/zh/reference/functions/aggregate-functions/deltaSum) 函数。

**语法**

```sql theme={null}
deltaSumTimestamp(value, timestamp)
```

**参数**

* `value` — 输入值。[`(U)Int*`](/zh/reference/data-types/int-uint) 或 [`Float*`](/zh/reference/data-types/float) 或 [`Date`](/zh/reference/data-types/date) 或 [`DateTime`](/zh/reference/data-types/datetime)
* `timestamp` — 用于对值排序的参数。[`(U)Int*`](/zh/reference/data-types/int-uint) 或 [`Float*`](/zh/reference/data-types/float) 或 [`Date`](/zh/reference/data-types/date) 或 [`DateTime`](/zh/reference/data-types/datetime)

**返回值**

返回按 `timestamp` 参数排序后，相邻值之间差值的累积和。[`(U)Int*`](/zh/reference/data-types/int-uint) 或 [`Float*`](/zh/reference/data-types/float) 或 [`Date`](/zh/reference/data-types/date) 或 [`DateTime`](/zh/reference/data-types/datetime)

**示例**

**按 timestamp 排序的基本用法**

```sql title=Query theme={null}
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))
```

```response title=Response theme={null}
┌─deltaSumTimestamp(value, timestamp)─┐
│                                  13 │
└─────────────────────────────────────┘
```
