Dela via


TopOne (Azure Stream Analytics)

Returnerar den översta posten, där rangordningen definierar rangordningspositionen för händelsen i fönstret enligt den angivna ordningen. Ordningen/rangordningen baseras på händelsekolumner och kan anges i ORDER BY-satsen.

Syntax

-- 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>])  

Argument

<scalar_expression>

TopOne tar ett valfritt skalärt uttryck som gör att du kan ange en projektion över den översta händelsen. Utan parametern returneras en fullständig händelsepost.

<column_name>

Anger namnet på kolumnen i den indatahändelse genom vilken ordning ska utföras. Observera att endast sortering efter bigint-, float- och datetime-typer tillåts.

ÖVER ([<PARTITION BY-sats><LIMIT DURATION-sats> [<WHEN-sats>]]

Avgör den grupp med rader som TopOne används för. PARTITION BY-satsen anger att raderna med samma partitionsnyckel ska grupperas tillsammans. LIMIT DURATION-satsen anger hur mycket historik som ingår i gruppen. Den valfria WHEN-satsen anger ett booleskt villkor för de rader som ska ingå i gruppen. Mer information om användningen finns i OVER-satsen .

Returtyper

Värde som projiceras av parametern <scalar_expression> eller ett postvärde om ingen parameter anges.

Exempel

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)