InfluxQL杂项函数
使用InfluxQL杂项函数在InfluxQL查询中执行不同的操作。
fill()
用指定的填充值填充在GROUP BY time()
查询中从空时间窗口返回的null字段值。
仅在GROUP BY
子句中受支持。
fill(behavior)
参数
行为:定义填充操作的行为。如果没有包含
FILL
子句,则默认行为是fill(null)
。以下选项可用
- 数值字面量:用指定的数值字面量替换null值。
- 线性:使用现有值之间的线性插值来替换null值。
- 无:删除具有null字段值的行。
- null:保留null值和相关的时间戳。
- 前一个:用最近的一个非null值替换null值。
示例
以下示例使用了比特币价格示例数据集。
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 |
这个页面有帮助吗?
感谢您的反馈!