approx_percentile funzione di aggregazione

Si applica a: segno di spunta sì Databricks SQL segno di spunta sì Databricks Runtime

Restituisce il percentile approssimativo dell'oggetto expr all'interno del gruppo.

Sintassi

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

Questa funzione può anche essere richiamata come funzione window usando la OVER clausola .

Argomenti

  • expr: espressione numerica.
  • percentile: valore letterale numerico compreso tra 0 e 1 o una matrice letterale di valori numerici, ognuno compreso tra 0 e 1.
  • accuracy: valore INTEGER letterale maggiore di 0. Se l'accuratezza viene omessa, viene impostata su 10000.
  • cond: espressione booleana facoltativa che filtra le righe usate per l'aggregazione.

Valori restituiti

La funzione di aggregazione restituisce l'espressione che rappresenta il valore più piccolo nel gruppo ordinato (ordinato da meno a maggiore) in modo che non più di percentile valori sia minore del expr valore o uguale a tale valore.

Se percentile è una matrice, approx_percentile restituisce la matrice percentile approssimativa di expr in percentile. Il accuracy parametro controlla l'accuratezza dell'approssimazione al costo della memoria. Un valore più elevato di accuratezza produce una migliore accuratezza, 1.0/accuracy è l'errore relativo dell'approssimazione. Questa funzione è un sinonimo di percentile_approx funzione di aggregazione.

Se DISTINCT viene specificato, la funzione opera solo su un set univoco di expr valori.

Esempi

> 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