2016-07-18 11 views
1

私の入力は以下の通りです:fqn、v、t。グループの最初のV値を取得する必要があります。以下は私の質問です。私はこれがあなたのクエリを記述するための最短の道となりますAzure Stream Analyticsクエリでは、グループの最初の値を取得する方法は?

SELECT 
v 
fqn, min(t) as timeslot 
INTO 
[finalalloutput] 
FROM 
[finalallinput] timestamp by t 
where fqn not like '%Production%' 
group by TumblingWindow(minute, 1),fqn 

答えて

3

グループ内のVの最初の値が必要になります。

SELECT 
    t, v, fqn 
FROM 
    [finalallinput] timestamp by t 
WHERE 
    IsFirst(minute, 1) OVER (WHEN [fqn] not like '%Production%') = 1 

しかし、あなたはまた、それを用いTOPONE集約関数行うことができます。

WITH step1 AS 
(
SELECT 
    TopOne() OVER (ORDER BY t ASC) firstEvent, 
    fqn, min(t) as timeslot 
FROM 
    [finalallinput] timestamp by t 
WHERE 
    fqn not like '%Production%' 
GROUP BY 
    TumblingWindow(minute, 1),fqn 
) 

SELECT 
    firstEvent.v, 
    fqn, 
    timeSlot 
INTO 
[finalalloutput] 
FROM step1 
関連する問題