Compartilhar 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 classifica os valores da expressão na cláusula ORDER BY e retorna o valor dentro da menor distância cumulativa que é maior ou igual a P. Por exemplo, PERCENTILE_DISC (0,5) calculará o 50º percentil (ou seja, a mediana) de uma expressão. PERCENTILE_DISC calcula o percentil com base em uma 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 ser computado. O valor deve variar entre 0 e 1.

OVER ( ORDER BY order_by_expression [ ASC | DESC] )

Especifica uma lista de valores numéricos para classificar e calcular percentil. Apenas uma order_by_expression é permitida. A expressão deve ser avaliada como um tipo numérico. Outros tipos de dados não são permitidos. A ordem de classificação padrão é crescente.

Tipos de retorno

O tipo de retorno é determinado pelo tipo order_by_expression.

Exemplos

O exemplo a seguir usa PERCENTILE_DISC para localizar o 95º percentil de disponibilidade de serviço entre regiões. Observe que a função sempre retornará um percentil que está 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

Exemplo de saída:

0,99