Hive中使用Unix秒的7天滚动平均值

时间:2018-12-08 23:04:26

标签: hive range unix-timestamp

我需要找到7天的温度滚动平均值。

使用数据集中提供的日期字符串,创建了unix时间戳。我将每天的第一个时间戳替换为当天午夜的关联的Unix时间戳。

The data looks like this

一周内有604800 UNIX秒,因此我尝试使用以下代码进行计算,但此方法不起作用。如何修复此代码,使其正确执行窗口计算?

DROP VIEW IF EXISTS every_7_days;
CREATE VIEW every_7_days AS
SELECT weather_dt,
       time,
       fixed_unix_time,
       temperature,
       avg(temperature) OVER(ORDER BY fixed_unix_time RANGE BETWEEN 604800 PRECEDING AND CURRENT ROW) AS roll7day_avg
  FROM clean_first_row
  ORDER BY fixed_unix_time;

0 个答案:

没有答案