Fonction d’agrégation mode
S’applique à : Databricks SQL Databricks Runtime 11.3 LTS et versions ultérieures
Retourne la valeur la plus fréquente de expr
, autre que NULL
, dans un groupe.
mode
est une fonction non déterministe, sauf si deterministic
est défini sur true
.
Syntaxe
mode(expr [, deterministic ]) [FILTER ( WHERE cond ) ]
Cette fonction peut également être appelée en tant que fonction de fenêtre à l’aide de la clause OVER
.
Arguments
expr
Expression d’un type qui peut être comparé.
deterministic
Dans Databricks SQL et Databricks Runtime 14.1 et versions ultérieures. Expression constante
BOOLEAN
facultative. Sitrue
garantit un résultat déterministe s’il existe plusieurs valeurs avec la même fréquence.cond
Expression
BOOLEAN
facultative qui filtre les lignes utilisées pour l’agrégation.
Retours
Le type de résultat correspond au type de l’argument.
Si le groupe contient uniquement des valeurs null, la fonction retourne NULL
.
Le résultat est non déterministe s’il existe une concordance pour la valeur la plus fréquente.
Exemples
> 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