Observação
O acesso a essa página exige autorização. Você pode tentar entrar ou alterar diretórios.
O acesso a essa página exige autorização. Você pode tentar alterar os diretórios.
Aplica-se a:
SQL do Databricks
Databricks Runtime
Retorna a média calculada dos valores de um grupo. Essa função é um sinônimo para avg a função de agregação.
Sintaxe
mean ( [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 numérico. -
cond: Uma expressão booliana opcional que filtra as linhas usadas para agregação.
Retornos
O tipo de resultado é calculado como para os argumentos:
-
DECIMAL(p, s): o tipo de resultado é umDECIMAL(p + 4, s + 4). Se a precisão máxima para DECIMAL for atingida, o aumento na escala é limitado para evitar a perda de dígitos significativos. - 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 é um
DOUBLE.
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, a média será calculada depois que as duplicatas tiverem sido removidas.
Aviso
No Databricks Runtime, se spark.sql.ansi.enabled for false, um estouro retornará NULL em vez de um erro.
Condições de erro comuns
Exemplos
> SELECT mean(col) FROM VALUES (1), (2), (3) AS tab(col);
2.0
> SELECT mean(DISTINCT col) FROM VALUES (1), (1), (2), (NULL) AS tab(col);
1.5
> SELECT mean(col) FROM VALUES (1), (2), (NULL) AS tab(col);
1.5
> SELECT mean(c1) FROM VALUES(5e307::DOUBLE), (5e307::DOUBLE) AS tab(c1);
Error: ARITHMETIC_OVERFLOW