我正在使用最后一个函数来创建一个标识接收到的最新记录的标志(因此我可以在 Power BI 中仅显示最新值)。
SELECT
events.deviceId
,events.[timestamp]
,events.externaltemp
,LAST(events.[timestamp]) OVER (PARTITION BY events.DeviceId LIMIT DURATION(day, 1) ) as latest
,case when LAST(events.[timestamp]) OVER (PARTITION BY events.DeviceId LIMIT DURATION(day, 1) ) = [timestamp] then 1 else 0 end as LastestFlag
INTO
[powerBI]
FROM
[EventHub] as events timestamp by [timestamp]
但是我看到最后一个函数总是返回与我的时间戳相同的日期时间,所以我的查询中的所有行看起来都是最后收到的。我的数据每秒都有记录。
(或者,我希望使用 row_number 函数给我一些过滤以识别最新记录 - 但这似乎不存在于流分析中)