mode
funzione di aggregazione
Si applica a: Databricks SQL Databricks Runtime 11.3 LTS e versioni successive
Restituisce il valore più frequente, non NULL
, di expr
in un gruppo.
mode
è una funzione non deterministica, a meno che non deterministic
sia impostata su true
.
Sintassi
mode(expr [, deterministic ]) [FILTER ( WHERE cond ) ]
Questa funzione può anche essere richiamata come funzione window usando la OVER
clausola .
Argomenti
expr
Espressione di qualsiasi tipo che può essere confrontata.
deterministic
In Databricks SQL e Databricks Runtime 14.1 e versioni successive. Espressione costante facoltativa
BOOLEAN
. Setrue
garantisce un risultato deterministico se sono presenti più valori con la stessa frequenza.cond
Espressione facoltativa
BOOLEAN
che filtra le righe usate per l'aggregazione.
Valori restituiti
Il tipo di risultato corrisponde al tipo dell'argomento.
Se il gruppo contiene solo valori Null, la funzione restituisce NULL
.
Il risultato non è deterministico se esiste un legame per il valore più frequente.
Esempi
> 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