跳转到主内容
跳转到主内容

deltaSum

deltaSum

自 v21.3 引入

对相邻行之间的算术差值求和。 如果差值为负,则会被忽略不计。

提示

为使该函数正常工作,底层数据必须经过排序。 如果希望在 materialized view 中使用该函数,通常更建议改用 deltaSumTimestamp 函数。

另请参阅:

语法

deltaSum(x1[, x2, ...])

参数

  • x1[, x2, ...] — 一个或多个输入值。IntegerFloat

返回值

返回输入值的累积算术差值。(U)Int*Float*

示例

仅包含正差值的基本用法

SELECT deltaSum(arrayJoin([1, 2, 3]))
┌─deltaSum(arrayJoin([1, 2, 3]))─┐
│                              2 │
└────────────────────────────────┘

混合值(忽略为负的差值)

SELECT deltaSum(arrayJoin([1, 2, 3, 0, 3, 4, 2, 3]))
┌─deltaSum(arrayJoin([1, 2, 3, 0, 3, 4, 2, 3]))─┐
│                                             7 │
└───────────────────────────────────────────────┘

浮点数值

SELECT deltaSum(arrayJoin([2.25, 3, 4.5]))
┌─deltaSum(arrayJoin([2.25, 3, 4.5]))─┐
│                                2.25 │
└─────────────────────────────────────┘

另请参阅