mode
(función de agregado)
Se aplica a: Databricks SQL Databricks Runtime 11.3 LTS y versiones posteriores
Devuelve el valor más frecuente, no NULL
, de expr
en un grupo.
mode
es una función no determinista a menos que deterministic
esté establecido en true
.
Sintaxis
mode(expr [, deterministic ]) [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 de cualquier tipo que se puede comparar.
deterministic
En Databricks SQL y Databricks Runtime 14.1 y versiones posteriores. Expresión constante
BOOLEAN
opcional. Sitrue
garantiza un resultado determinista si hay varios valores con la misma frecuencia.cond
Una expresión
BOOLEAN
opcional que filtra las filas usadas para la agregación.
Devoluciones
El tipo del resultado coincide con el tipo del argumento.
Si el grupo solo contiene valores NULL, la función devuelve NULL
.
El resultado no es determinista si hay un empate para el valor más frecuente.
Ejemplos
> SELECT mode(col) FROM VALUES (NULL), (1), (NULL), (2), (NULL), (3), (3) AS tab(col);
3
> SELECT mode(col) FROM VALUES (array(1, 2)), (array(1, 2)), (array(2, 3)) AS tab(col);
[1, 2]
-- The function returns either 1 or 2, but not 3
> SELECT mode(col) FROM VALUES (1), (1), (2), (2), (3) AS tab(col);
1
> SELECT mode(col) FROM VALUES (NULL), (NULL) AS tab(col);
NULL