mode (función de agregado)

Se aplica a:casilla marcada como sí Databricks SQL casilla marcada como Sí 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. Si true 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