Função de agregação median
Aplica-se a: Databricks SQL Databricks Runtime 11.3 LTS e versões posteriores
Retorna o valor mediano calculado dos valores de um grupo.
Sintaxe
median ( [ALL | DISTINCT] expr ) [FILTER ( WHERE cond ) ]
Essa função também pode ser invocada como uma função de janela usando a cláusula OVER
.
Argumentos
expr
: uma expressão avaliada como um intervalo ou um numérico.cond
: uma expressão booliana opcional que filtra as linhas usadas para agregação.
Retornos
O seguinte explica como os tipos de resultado são calculados:
- Intervalo de ano-mês: o resultado será um
INTERVAL YEAR TO MONTH
. - Intervalo de dia-hora, o resultado será um
INTERVAL DAY TO SECOND
. - Em todos os outros casos, o resultado será um DOUBLE.
Os valores nulos dentro do grupo são ignorados. Se um grupo estiver vazio ou consistir apenas em nulos, o resultado será NULL
.
Se DISTINCT
for especificado, as duplicatas serão removidas e o valor mediano será computado.
Essa função é um sinônimo de percentile_cont(0,5) WITHIN GROUP (ORDER BY expr).
Exemplos
> SELECT median(col) FROM VALUES (1), (2), (2), (3), (4), (NULL) AS tab(col);
2.0
> SELECT median(DISTINCT col) FROM VALUES (1), (2), (2), (3), (4), (NULL) AS tab(col);
2.5
> SELECT median(col) FROM VALUES (INTERVAL '1' YEAR), (INTERVAL '2' YEAR) AS tab(col);
1-6