Documentation

difference() 函数

difference() 返回后续值之间的差异。

数字类型的减法规则

  • 两个非空值之间的差是它们的代数差;或者 null,如果结果为负并且 nonNegative: true
  • null 减去某个值总是 null;
  • 某个值 v 减去 nullv 减去在 v 之前看到的最后一个非空值;或者如果 v 是第一个看到的非空值,则为 null
  • 如果 nonNegativeinitialZero 被设为 truedifference() 返回 0 和后续值之间的差值。 如果后续值小于零,difference() 返回 null

输出表格

对于每个具有 n 行的输入表, difference() 输出一个具有 n - 1 行的表。

函数类型签名
(
    <-tables: stream[A],
    ?columns: [string],
    ?initialZero: bool,
    ?keepFirst: bool,
    ?nonNegative: bool,
) => stream[B] where A: Record, B: Record

有关更多信息,请参见 Function type signatures

参数

非负

不允许负差异。默认值是 false

true 时,如果一个值小于前一个值,函数假设前一个值应该是零。

要操作的列的列表。默认值是 ["_value"]

保留第一个

保留每个输入表中的第一行。默认值是 false

如果 true,每个输出表的第一行的差异为null。

初始化为零

在差值计算中,当后续值小于前一个值且 nonNegativetrue 时,使用零 (0) 作为初始值。默认值为 false

表格

输入数据。默认是管道转发数据 (<-).

示例

计算后续值之间的差异

import "sampledata"

sampledata.int()
    |> difference()

查看示例输入和输出

计算后续值之间的非负差

import "sampledata"

sampledata.int()
    |> difference(nonNegative: true)

查看示例输入和输出

计算后续值之间的差异,包括空值

import "sampledata"

sampledata.int(includeNull: true)
    |> difference()

查看示例输入和输出

在计算值之间的差异时保留第一个值

import "sampledata"

sampledata.int()
    |> difference(keepFirst: true)

查看示例输入和输出



Flux的未来

Flux 正在进入维护模式。您可以像现在一样继续使用它,而无需对您的代码进行任何更改。

阅读更多

InfluxDB 3 开源版本现已公开Alpha测试

InfluxDB 3 Open Source is now available for alpha testing, licensed under MIT or Apache 2 licensing.

我们将发布两个产品作为测试版的一部分。

InfluxDB 3 核心,是我们新的开源产品。 它是一个用于时间序列和事件数据的实时数据引擎。 InfluxDB 3 企业版是建立在核心基础之上的商业版本,增加了历史查询能力、读取副本、高可用性、可扩展性和细粒度安全性。

有关如何开始的更多信息,请查看: