percentile
agregační funkce
Platí pro: Databricks SQL
Databricks Runtime
Vrátí přesnou percentilovou expr
hodnotu v zadané percentage
skupině.
Syntaxe
percentile ( [ALL | DISTINCT] expr, percentage [, frequency] ) [FILTER ( WHERE cond ) ]
Tuto funkci lze také vyvolat jako funkci okna pomocí klauzule OVER
.
Argumenty
-
expr
: Výraz, který se vyhodnotí jako číselný. -
percentage
: Číselný výraz mezi 0 a 1 nebo POLEm číselných výrazů, z nichž každý je mezi 0 a 1. -
frequency
: Volitelný celočíselný literál větší než 0. -
cond
: Volitelný logický výraz filtrující řádky použité pro agregaci.
Návraty
DOUBLE je-li percentage
číselná, nebo POLE TYPU DOUBLE, pokud percentage
je POLE.
Frekvence popisuje, kolikrát expr
se musí počítat. Frekvence 10 pro určitou hodnotu je ekvivalentní této hodnotě, která se v okně zobrazuje 10krát s frekvencí 1.
Výchozí frekvence je 1.
Pokud je zadán DISTINCT
, funkce pracuje pouze s jedinečnou sadou expr
hodnot.
Příklady
> 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]