Partager via


Fonction d’agrégation mode

S’applique à : coche marquée oui Databricks SQL oui coché 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. Si true 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