我在尝试获取“Max”DateTime时遇到ASA问题。
我的代码是:
LAST(Timestamp) OVER (PARTITION BY DeviceId LIMIT DURATION(minute, 5)) AS DateTime,
它出现错误,表示它不在聚合函数中或在组中。我不知道我在这里做错了什么。任何帮助将不胜感激!
答案 0 :(得分:2)
LAST不是聚合函数,不能在GROUP BY语句中使用。它通常在SELECT语句中与WHEN子句一起用于"回顾"并找到匹配特定条件的事件。请查看示例here
如果你想要的是在时间窗口找到最大的时间戳,你可以这样做:
SELECT MAX(CAST(时间戳AS日期时间))AS DateTime 来自输入 GROUP BY DeviceId,TumblingWindow(分钟,1)