percentile_disc
-Aggregatfunktion
Gilt für: Databricks SQL Databricks Runtime 11.3 LTS und höher
Gibt den Wert zurück, der dem Perzentil (percentile
) des angegebenen Sortierschlüssels (sortKey
) entspricht (unter Verwendung eines diskreten Verteilungsmodells).
Syntax
percentile_disc ( percentile )
WITHIN GROUP (ORDER BY sortKey [ASC | DESC] )
Diese Funktion kann auch mithilfe der OVER
-Klausel als Fensterfunktion aufgerufen werden.
Argumente
percentile
: Ein numerisches Literal zwischen 0 und 1 oder ein Literalarray aus numerischen Literalen, die jeweils zwischen 0 und 1 liegen.sortKey
: Ein numerischer Ausdruck, über den das Perzentil berechnet wird.ASC
oderDESC
: Geben Sie optional an, ob das Perzentil in aufsteigender oder absteigender Reihenfolge berechnet wird. Der Standardwert lautetASC
.
Gibt zurück
DOUBLE, wenn percentile
numerisch ist, oder ein ARRAY von DOUBLE, wenn percentile
ein ARRAY ist.
Die Aggregatfunktion gibt den sortKey
-Wert zurück, der mit dem percentile
in der Gruppe von sortKeys
übereinstimmt.
Beispiele
-- Return the median, 40%-ile and 10%-ile.
> SELECT percentile_disc(array(0.5, 0.4, 0.1)) WITHIN GROUP (ORDER BY col)
FROM VALUES (0), (1), (2), (10) AS tab(col);
[1, 1, 0]
-- Return the interpolated median.
> SELECT percentile_disc(0.50) WITHIN GROUP (ORDER BY col)
FROM VALUES (0), (6), (6), (7), (9), (10) AS tab(col);
6