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