Percentile_Disc (Azure 串流分析)
根據整個資料集計算百分位數。 針對指定的百分位數值 P,PERCENTILE_DISC排序 ORDER BY 子句中的運算式值,並在大於或等於 P 的最小累計距離內傳回值。例如,PERCENTILE_DISC (0.5) 會計算運算式中位數) (的第 50 個百分位數。 PERCENTILE_DISC會根據資料值的離散分佈來計算百分位數;結果等於輸入資料中的特定值。
語法
PERCENTILE_DISC ( numeric_literal )
OVER ( ORDER_BY order_by_expression [ ASC | DESC ])
引數
numeric_literal
要運算的百分位數。 值必須介於 0 到 1 之間。
OVER ( ORDER BY order_by_expression [ ASC |DESC] )
指定要排序和計算百分位數的數值清單。 只允許一個 order_by_expression。 運算式必須評估為數值類型。 不允許其他資料類型。 預設排序順序為遞增。
傳回型別
傳回型別由 order_by_expression 類型決定。
範例
下列範例會使用 PERCENTILE_DISC 來尋找跨區域的第 95 個服務可用性百分位數。 請注意,函式一律會傳回輸入資料集內的百分位數。
SELECT PERCENTILE_DISC(0.95) OVER (ORDER BY serviceAvailability)
FROM testInput
GROUP BY SlidingWindow(hours, 1)
範例輸入:
區域 | ServiceAvailability |
---|---|
A | 0.98 |
B | 0.93 |
C | 0.78 |
D | 0.99 |
E | 0.89 |
範例輸出︰
0.99