Compartir a través de


mean (función de agregado)

Se aplica a:casilla marcada como Sí Databricks SQL casilla marcada como Sí Databricks Runtime

Devuelve la media calculada de los valores de un grupo. Esta función es un sinónimo para la función de agregado avg.

Sintaxis

mean ( [ALL | DISTINCT] expr ) [FILTER ( WHERE cond ) ]

Esta función también se puede invocar como una función de ventana mediante la cláusula OVER.

Argumentos

  • expr: una expresión que se evalúa como un número.
  • cond: una expresión booleana opcional que filtra las filas usadas para la agregación.

Devoluciones

El tipo de resultado se calcula como para los argumentos:

  • DECIMAL(p, s): el tipo de resultado es DECIMAL(p + 4, s + 4). Si se alcanza la precisión máxima de DECIMAL, el aumento de escala se limitará para evitar la pérdida de dígitos significativos.
  • Intervalo de año-mes: el resultado es un valor INTERVAL YEAR TO MONTH.
  • Intervalo de día-hora: el resultado es un valor INTERVAL DAY TO SECOND.
  • En todos los demás casos, el resultado es un valor DOUBLE.

Los valores NULL dentro del grupo se omiten. Si un grupo está vacío o solo consta de valores NULL, el resultado es NULL.

Si se especifica DISTINCT, la media se calcula después de quitar los duplicados.

Advertencia

En Databricks Runtime, si spark.sql.ansi.enabled es false, un desbordamiento devuelve NULL en lugar de un error.

Ejemplos

> 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