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)