Share via


Percentile_Disc (Azure Stream Analytics)

Calcula um percentil com base em todo o conjunto de dados. Para um determinado valor de percentil P, PERCENTILE_DISC ordena os valores da expressão na cláusula ORDER BY e devolve o valor dentro da menor distância cumulativa maior ou igual a P. Por exemplo, PERCENTILE_DISC (0,5) calculará o percentil 50 (ou seja, a mediana) de uma expressão. PERCENTILE_DISC calcula o percentil com base numa distribuição discreta dos valores de dados; o resultado é igual a um valor específico dos dados de entrada.

Sintaxe

PERCENTILE_DISC ( numeric_literal )
       OVER ( ORDER_BY order_by_expression [ ASC | DESC ])

Argumentos

numeric_literal

O percentil a calcular. O valor tem de variar entre 0 e 1.

OVER ( ORDER BY order_by_expression [ ASC | DESC] )

Especifica uma lista de valores numéricos para ordenar e calcular o percentil. Só é permitido um order_by_expression. A expressão tem de ser avaliada como um tipo numérico. Não são permitidos outros tipos de dados. A sequência de ordenação predefinida é ascendente.

Tipos de Retorno

O tipo de retorno é determinado pelo tipo de order_by_expression.

Exemplos

O exemplo seguinte utiliza PERCENTILE_DISC para encontrar o percentil 95 da disponibilidade do serviço entre regiões. Tenha em atenção que a função devolverá sempre um percentil dentro do conjunto de dados de entrada.

SELECT PERCENTILE_DISC(0.95) OVER (ORDER BY serviceAvailability)
FROM testInput
GROUP BY SlidingWindow(hours, 1)

Entrada de exemplo:

Regiões ServiceAvailability
A 0.98
B 0.93
C 0.78
D 0.99
E 0.89

Saída de exemplo:

0.99