Share via


mode funzione di aggregazione

Si applica a:segno di spunta sì Databricks SQL segno di spunta sì 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 . Se true 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