InfluxDB:按时间间隔使用组中的最后一项
InfluxDB: Use last item from group by time interval
我正在尝试将一些计数器从每天 15 秒的测量改为每周 5 分钟的测量:
SELECT * INTO company."week".foo_counters_5m
FROM company."day".foo_counters
WHERE time > now() - 1d
GROUP BY id,time(5m) fill(none) LIMIT 1
当我写这个问题时,我发现 一个 使用 LAST(<field>)
函数的答案,不确定它是否是最好的答案:
SELECT LAST(field1),LAST(field2)... INTO company."week".foo_counters_5m
FROM company."day".foo_counters
WHERE time > now() - 1d
GROUP BY id,time(5m) fill(none)
- 由于
LAST
对字段进行操作,我很确定此查询必须遍历组中的每个项目。
- 不幸的是你不能
LAST(*)
,你必须SELECT
每个字段
- 标签 (
id
) 可以 SELECT
通过将它们包含在 GROUP BY
中来编辑
我正在尝试将一些计数器从每天 15 秒的测量改为每周 5 分钟的测量:
SELECT * INTO company."week".foo_counters_5m
FROM company."day".foo_counters
WHERE time > now() - 1d
GROUP BY id,time(5m) fill(none) LIMIT 1
当我写这个问题时,我发现 一个 使用 LAST(<field>)
函数的答案,不确定它是否是最好的答案:
SELECT LAST(field1),LAST(field2)... INTO company."week".foo_counters_5m
FROM company."day".foo_counters
WHERE time > now() - 1d
GROUP BY id,time(5m) fill(none)
- 由于
LAST
对字段进行操作,我很确定此查询必须遍历组中的每个项目。 - 不幸的是你不能
LAST(*)
,你必须SELECT
每个字段 - 标签 (
id
) 可以SELECT
通过将它们包含在GROUP BY
中来编辑