【发布时间】:2021-08-22 00:25:46
【问题描述】:
我有一个包含以下列的数据库:时间、设备、指标、值。该数据库每分钟都会收集相应设备/指标组合的值。
我正在尝试编写能够为我提供每小时平均值的代码(例如,它不是在下午 5 点到 6 点给我 60 个值,而是在下午 5 点到 6 点之间对所有这些值进行平均并输出 1值)。
到目前为止,我有这个代码:
SELECT
TIME_FLOOR(__time, 'PT1h') AS "__time_time_floor",
"value", COUNT(*) AS "Count"
FROM "database"
WHERE "__time" >= CURRENT_TIMESTAMP - INTERVAL '1' DAY AND "device" = 'device_1'AND "metric"='metric_1'
GROUP BY 1, 2
ORDER BY "__time_time_floor" DESC
此代码每小时(下午 4 点、5 点、6 点...)输出设备/指标的值(我认为)。但是,正如我上面所说,我想要每小时间隔的平均值。不知道该怎么做。我尝试使用“AVG”和“SUM”函数,但出现错误。
谢谢!
【问题讨论】: