- Catégories :
Fonctions d’agrégation (General) , Fonctions de fenêtre
MODE¶
Renvoie la valeur la plus fréquente pour les valeurs comprises dans expr1. Les valeurs NULL sont ignorées. Si toutes les valeurs sont NULL ou s’il n’y a aucune ligne, la fonction renvoie NULL.
Syntaxe¶
Fonction d’agrégation
Fonction de fenêtre
Arguments¶
expr1Cette expression produit les valeurs recherchées pour trouver la valeur la plus fréquente. L’expression peut être de l’un des types de données suivants :
BINARY
BOOLEAN
DATE
FLOAT
INTEGER
NUMBER
TIMESTAMP (TIMESTAMP_LTZ, TIMESTAMP_NTZ, TIMESTAMP_TZ)
VARCHAR
VARIANT
Cette fonction ne prend pas en charge les types de données suivants :
ARRAY
GEOGRAPHY
OBJECT
expr2L’expression facultative sur laquelle partitionner les données en groupes. La sortie contient la valeur la plus fréquente pour chaque groupe/partition.
Renvoie¶
Le type de données de la valeur renvoyée est identique à celui de l’expression d’entrée.
Notes sur l’utilisation¶
S’il existe un lien pour la valeur la plus fréquente (deux valeurs ou plus apparaissent aussi souvent et plus fréquemment que toute autre valeur), MODE renvoie l’une de ces valeurs.
DISTINCT n’est pas pris en charge pour cette fonction.
Même si NULL est la valeur la plus fréquente, la fonction ne renvoie pas NULL (sauf si toutes les valeurs sont NULL).
Lorsque cette fonction est appelée en tant que fonction de fenêtre, elle ne prend pas en charge :
Une clause ORDER BY dans la clause OVER.
Cadres de fenêtre explicites.
Exemples¶
Le code suivant illustre l’utilisation de la fonction MODE :
Créer une table et des données :
Obtenez la valeur MODE pour la colonne v. La fonction renvoie NULL, car il n’y a pas de lignes.
Insérer quelques lignes :
La fonction MODE renvoie la valeur la plus fréquente 10 :
Insérer quelques lignes supplémentaires :
Il existe maintenant deux valeurs les plus fréquentes. La fonction MODE sélectionne la valeur 10 :
Insérez une ligne avec une valeur NULL :
Obtenir la valeur MODE pour chaque groupe. Notez que parce que le groupe k = 3 contient uniquement des valeurs NULL, la valeur renvoyée pour ce groupe est NULL.
La fonction MODE peut également être utilisée comme fonction de fenêtre de base avec une clause OVER :