Compartilhar via


Função de agregação mode

Aplica-se a:verificação marcada como sim SQL do Databricks caixa de seleção marcada Databricks Runtime 11.3 LTS e versões posteriores

Retorna o valor de expr mais frequente, não NULL, em um grupo.

mode é uma função não determinística, a menos que deterministic seja definido como true.

Sintaxe

mode(expr [, deterministic ]) [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 de qualquer tipo que possa ser comparada.

  • deterministic

    No Databricks SQL e Databricks Runtime 14.1 e superior. Uma expressão constante opcional BOOLEAN. Se true garantir um resultado determinístico se houver vários valores com a mesma frequência.

  • cond

    Uma expressão opcional BOOLEAN filtrando as linhas usadas para agregação.

Retorna

O tipo de resultado corresponde ao tipo de argumento.

Se o grupo contiver apenas valores nulos, a função retornará NULL. O resultado será não determinístico se houver um empate no valor mais frequente.

Exemplos

> 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