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