Partager via


TopOne (Azure Stream Analytics)

Retourne l’enregistrement de classement supérieur, où le classement définit la position de classement de l’événement dans la fenêtre en fonction de l’ordre spécifié. Le classement est basé sur des colonnes d'événement et peut être spécifié dans la clause ORDER BY.

Syntaxe

-- Aggregate Function Syntax
TopOne( [ <scalar_expression> ] ) OVER (ORDER BY (<column name> [ASC |DESC])+)  

-- Analytic Function Syntax
TopOne( [ <scalar_expression> ] ) OVER ([<PARTITION BY clause>] ORDER BY (<column name> [ASC |DESC])+ <LIMIT DURATION clause> [<WHEN clause>])  

Arguments

<scalar_expression>

TopOne prend une expression scalaire facultative qui vous permet de spécifier une projection sur l’événement supérieur. Sans le paramètre, l’enregistrement d’événement complet est retourné.

<column_name>

Spécifie le nom de la colonne dans l’événement d’entrée selon lequel le classement sera effectué. Notez que seul le classement par type bigint, float et datetime est autorisé.

OVER ([<CLAUSE LIMITE DE LA> CLAUSE><PARTITION BY [<CLAUSE> WHEN]]

Détermine le groupe de lignes sur lequel TopOne est appliqué. La clause PARTITION BY spécifie que les lignes avec la même clé de partition seront regroupées. La clause LIMIT DURATION spécifie la quantité d’historique incluse dans le groupe. La clause WHEN facultative spécifie une condition booléenne pour les lignes à inclure dans le groupe. Pour plus d’informations sur l’utilisation, consultez la clause OVER .

Types de retour

Valeur projetée par le <scalar_expression> paramètre ou valeur d’enregistrement si aucun paramètre n’est fourni.

Exemples

SELECT   
    TopOne() OVER (ORDER BY value DESC) as topEvent  
FROM input  
GROUP BY Tumbling(second, 10)  
  
SELECT   
    TopOne(x * y) OVER (ORDER BY value DESC) as topEvent  
FROM input  
GROUP BY Tumbling(second, 10)