Timescale 的时间加权平均值实现为一个聚合,它使用上一次观测值结转 (LOCF) 或线性插值来加权每个值。该聚合不可并行化,但 连续聚合 支持它。
在此过程中,我们使用一个名为 freezer_temps
的示例表,其中包含有关内部冷冻室温度的数据。
在
psql
提示符下,查找数据的平均值和时间加权平均值SELECT freezer_id,avg(temperature),average(time_weight('Linear', ts, temperature)) as time_weighted_averageFROM freezer_tempsGROUP BY freezer_id;要确定冷冻室是否超出温度范围超过 15 分钟,请在窗口函数中使用时间加权平均值
SELECT *,average(time_weight('Linear', ts, temperature) OVER (PARTITION BY freezer_id ORDER BY ts RANGE '15 minutes'::interval PRECEDING )) as rolling_twaFROM freezer_tempsORDER BY freezer_id, ts;
有关时间加权平均值 API 调用的更多信息,请参阅 hyperfunction API 文档。
关键词
在此页面上发现问题?报告问题 或 在 GitHub 上编辑此页。