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