Condividi tramite


Percentile_Disc (Analisi di flusso di Azure)

Calcola un percentile in base all'intero set di dati. Per un determinato valore percentile P, PERCENTILE_DISC ordina i valori dell'espressione nella clausola ORDER BY e restituisce il valore all'interno della distanza cumulativa più piccola maggiore o uguale a P. Ad esempio, PERCENTILE_DISC (0,5) calcola il 50° percentile (ovvero la median) di un'espressione. PERCENTILE_DISC calcola il percentile in base a una distribuzione discreta dei valori dei dati; il risultato è uguale a un valore specifico dai dati di input.

Sintassi

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

Argomenti

numeric_literal

Percentile da calcolare. Il valore deve essere compreso tra 0 e 1.

OVER ( ORDER BY order_by_expression [ ASC | DESC] )

Specifica un elenco di valori numerici per ordinare e calcolare il percentile. È consentito un solo order_by_expression. L'espressione deve restituire un tipo numerico. Non sono consentiti altri tipi di dati. Per impostazione predefinita, l'ordinamento è crescente.

Tipi restituiti

Il tipo restituito viene determinato dal tipo di order_by_expression.

Esempio

L'esempio seguente usa PERCENTILE_DISC per trovare il 95° percentile di disponibilità del servizio tra aree. Si noti che la funzione restituirà sempre un percentile all'interno del set di dati di input.

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

Input di esempio:

Regioni ServiceAvailability
A 0.98
B 0.93
C 0,78
D 0.99
E 0.89

Output di esempio:

0.99