共用方式為


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