InfluxQL 杂项函数
使用 InfluxQL 杂项函数在 InfluxQL 查询中执行不同的操作。
fill()
使用指定的填充值填充 GROUP BY time()
查询中从空时间窗口返回的 null 字段值。
仅在 GROUP BY
子句 中受支持。
fill(behavior)
参数
behavior: 定义填充操作的行为。如果未包含
FILL
子句,则默认行为为fill(null)
。以下选项可用
- numeric literal: 将空值替换为指定的数值。
- linear: 使用现有值之间的线性插值来替换空值。
- none: 删除包含空字段值的行。
- null: 保留空值和关联的时间戳。
- previous: 将空值替换为最近的非空值。
示例
以下示例使用 比特币价格示例数据集。
SELECT
MEAN(price)
FROM bitcoin
WHERE
code = 'USD'
AND time >= '2023-05-01T00:00:00Z'
AND time < '2023-05-01T02:00:00Z'
GROUP BY
time(30m)
fill(0)
时间 | 平均值 |
---|---|
2023-05-01T00:00:00Z | 29319.9092 |
2023-05-01T00:30:00Z | 29307.4416 |
2023-05-01T01:00:00Z | 0 |
2023-05-01T01:30:00Z | 29263.2886 |
SELECT
MEAN(price)
FROM bitcoin
WHERE
code = 'USD'
AND time >= '2023-05-01T00:00:00Z'
AND time < '2023-05-01T02:00:00Z'
GROUP BY
time(30m)
fill(linear)
时间 | 平均值 |
---|---|
2023-05-01T00:00:00Z | 29319.9092 |
2023-05-01T00:30:00Z | 29307.4416 |
2023-05-01T01:00:00Z | 29285.3651 |
2023-05-01T01:30:00Z | 29263.2886 |
SELECT
MEAN(price)
FROM bitcoin
WHERE
code = 'USD'
AND time >= '2023-05-01T00:00:00Z'
AND time < '2023-05-01T02:00:00Z'
GROUP BY
time(30m)
fill(none)
时间 | 平均值 |
---|---|
2023-05-01T00:00:00Z | 29319.9092 |
2023-05-01T00:30:00Z | 29307.4416 |
2023-05-01T01:30:00Z | 29263.2886 |
SELECT
MEAN(price)
FROM bitcoin
WHERE
code = 'USD'
AND time >= '2023-05-01T00:00:00Z'
AND time < '2023-05-01T02:00:00Z'
GROUP BY
time(30m)
fill(null)
时间 | 平均值 |
---|---|
2023-05-01T00:00:00Z | 29319.9092 |
2023-05-01T00:30:00Z | 29307.4416 |
2023-05-01T01:00:00Z | |
2023-05-01T01:30:00Z | 29263.2886 |
SELECT
MEAN(price)
FROM bitcoin
WHERE
code = 'USD'
AND time >= '2023-05-01T00:00:00Z'
AND time < '2023-05-01T02:00:00Z'
GROUP BY
time(30m)
fill(previous)
时间 | 平均值 |
---|---|
2023-05-01T00:00:00Z | 29319.9092 |
2023-05-01T00:30:00Z | 29307.4416 |
2023-05-01T01:00:00Z | 29307.4416 |
2023-05-01T01:30:00Z | 29263.2886 |
此页内容对您有帮助吗?
感谢您的反馈!
支持和反馈
感谢您成为我们社区的一份子!我们欢迎并鼓励您提供关于 InfluxDB Clustered 和本文档的反馈和错误报告。如需查找支持,请使用以下资源
拥有年度合同或支持合同的客户 可以 联系 InfluxData 支持。