percentile_approx
função agregar
Aplica-se a: Databricks SQL Databricks Runtime
Devolve o percentil aproximado do dentro do expr
grupo. Esta função é sinónimo de approx_percentile função agregada.
Sintaxe
percentile_approx ( [ALL | DISTINCT ] expr, percentile [, accuracy] ) [FILTER ( WHERE cond ) ]
Esta função também pode ser invocada como uma função de janela usando a OVER
cláusula.
Argumentos
expr
: Uma expressão numérica.percentile
: Um literal numérico entre 0 e 1 ou uma matriz literal de valores numéricos, cada um entre 0 e 1.accuracy
: Um literal inteiro maior que 0. Se a precisão for omitida, ela será definida como10000
.cond
: Uma expressão booleana opcional filtrando as linhas usadas para agregação.
Devoluções
A função agregada retorna a expressão que é o menor valor no grupo ordenado (classificado do menor para o maior) de tal forma que não mais do que de valores é menor que percentile
expr
o valor ou igual a esse valor.
Se percentile
for uma matriz percentile_approx, retorna a matriz de percentil aproximada de expr
no percentil especificado.
O accuracy
parâmetro controla a precisão de aproximação ao custo da memória.
Maior valor de precisão produz melhor precisão, 1.0/accuracy
é o erro relativo da aproximação.
Se DISTINCT
for especificado, a função opera apenas em um conjunto exclusivo de expr
valores.
Exemplos
> 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