percentile_approx
mängdfunktion
Gäller för: Databricks SQL
Databricks Runtime
Returnerar den ungefärliga percentilen i expr
gruppen. Den här funktionen är synonym för approx_percentile mängdfunktion.
Syntax
percentile_approx ( [ALL | DISTINCT ] expr, percentile [, accuracy] ) [FILTER ( WHERE cond ) ]
Den här funktionen kan också anropas som en fönsterfunktion med hjälp av OVER
-satsen.
Argument
-
expr
: Ett numeriskt uttryck. -
percentile
: En numerisk literal mellan 0 och 1 eller en literalmatris med numeriska värden, var och en mellan 0 och 1. -
accuracy
: En INTEGER-literal som är större än 0. Om noggrannhet utelämnas är den inställd på10000
. -
cond
: Ett valfritt booleskt uttryck som filtrerar de rader som används för aggregering.
Returer
Aggregeringsfunktionen returnerar uttrycket som är det minsta värdet i den ordnade gruppen (sorterade från minst till störst) så att inte mer än värden percentile
är mindre än expr
värdet eller lika med det värdet.
Om percentile
är en matris percentile_approx returnerar den ungefärliga percentilmatrisen expr
för vid den angivna percentilen.
Parametern accuracy
styr uppskattningsnoggrannheten på kostnaden för minne.
Högre noggrannhetsvärde ger bättre noggrannhet, 1.0/accuracy
är det relativa felet i uppskattningen.
Om DISTINCT
anges fungerar funktionen endast på en unik uppsättning expr
värden.
Exempel
> SELECT percentile_approx(col, array(0.5, 0.4, 0.1), 100)
FROM VALUES (0), (1), (2), (10) AS tab(col);
[1,1,0]
> SELECT percentile_approx(col, 0.5, 100)
FROM VALUES (0), (6), (7), (9), (10), (10), (10) AS tab(col);
9
> SELECT percentile_approx(DISTINCT col, 0.5, 100)
FROM VALUES (0), (6), (7), (9), (10), (10), (10) AS tab(col);
7