percentile_approx statistische functie

Van toepassing op:gemarkeerd met ja Databricks SQL-controle gemarkeerd als ja Databricks Runtime

Retourneert het percentiel bij benadering van de expr binnen de groep. Deze functie is een synoniem voor approx_percentile statistische functie.

Syntaxis

percentile_approx ( [ALL | DISTINCT ] expr, percentile [, accuracy] ) [FILTER ( WHERE cond ) ]

Deze functie kan ook worden aangeroepen als een vensterfunctie met behulp van de OVER -component.

Argumenten

  • expr: Een numerieke expressie.
  • percentile: Een numerieke letterlijke waarde tussen 0 en 1 of een letterlijke matrix met numerieke waarden, elk tussen 0 en 1.
  • accuracy: Een letterlijke waarde voor GEHEEL GETAL groter dan 0. Als nauwkeurigheid wordt weggelaten, wordt deze ingesteld op 10000.
  • cond: een optionele Booleaanse expressie die de rijen filtert die worden gebruikt voor aggregatie.

Retourneert

De statistische functie retourneert de expressie die de kleinste waarde in de geordende groep is (gesorteerd van minst naar grootste), zodat niet meer dan percentile de expr waarden kleiner is dan de waarde of gelijk is aan die waarde. Als percentile een matrix is percentile_approx, retourneert de geschatte percentielmatrix van expr op het opgegeven percentiel.

De accuracy parameter bepaalt de nauwkeurigheid van de benadering ten koste van het geheugen. Hogere waarde van nauwkeurigheid resulteert in een betere nauwkeurigheid, 1.0/accuracy is de relatieve fout van de benadering.

Als DISTINCT is opgegeven, werkt de functie alleen op een unieke set expr waarden.

Voorbeelden

> 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