percentile
funkcja agregacji
Dotyczy: Databricks SQL
Databricks Runtime
Zwraca dokładną wartość expr
percentyla określoną percentage
w grupie.
Składnia
percentile ( [ALL | DISTINCT] expr, percentage [, frequency] ) [FILTER ( WHERE cond ) ]
Tę funkcję można również wywołać jako funkcję window przy użyciu klauzuli OVER
.
Argumenty
-
expr
: wyrażenie, które daje w wyniku wartość liczbową. -
percentage
: wyrażenie liczbowe z zakresu od 0 do 1 lub tablicy wyrażeń liczbowych z zakresu od 0 do 1. -
frequency
: opcjonalny literał liczby całkowitej większy niż 0. -
cond
: opcjonalne wyrażenie logiczne filtrujące wiersze używane do agregacji.
Zwraca
DWUKROTNIE, jeśli percentage
jest wartością liczbową lub tablicą PODWÓJNEj, jeśli percentage
jest tablicą.
Częstotliwość opisuje liczbę razy expr
, które muszą być zliczane. Częstotliwość 10 dla określonej wartości jest równoważna tej wartości wyświetlanej 10 razy w window z częstotliwością 1.
Domyślna częstotliwość to 1.
Jeśli DISTINCT
jest określona, funkcja działa tylko na jedynym setexpr
values.
Przykłady
> SELECT percentile(col, 0.3) FROM VALUES (0), (10), (10) AS tab(col);
6.0
> SELECT percentile(DISTINCT col, 0.3) FROM VALUES (0), (10), (10) AS tab(col);
3.0
> SELECT percentile(col, 0.3, freq) FROM VALUES (0, 1), (10, 2) AS tab(col, freq);
6.0
> SELECT percentile(col, array(0.25, 0.75)) FROM VALUES (0), (10) AS tab(col);
[2.5,7.5]