Catégories :

Fonctions d’agrégation (Compter les valeurs distinctes)

ARRAY_UNION_AGG

Renvoie un ARRAY qui contient l’union des valeurs distinctes de l’entrée ARRAYs dans une colonne. Vous pouvez l’utiliser pour agréger des valeurs distinctes dans des ARRAYs produits par ARRAY_UNIQUE_AGG.

Voir aussi :

ARRAY_UNIQUE_AGG , Utilisation de tableaux pour calculer des valeurs distinctes pour les agrégations hiérarchiques

Syntaxe

ARRAY_UNION_AGG( <column> )

Arguments

column

La colonne contenant les ARRAYs avec les valeurs distinctes (les ARRAYs produits par ARRAY_UNIQUE_AGG).

Renvoie

La fonction renvoie un ARRAY contenant les valeurs distinctes des ARRAYs de la column. Les valeurs dans l’ARRAY ne sont pas dans un ordre particulier, et l’ordre n’est pas déterministe.

Notez que cette fonction utilise la sémantique multiset, ce qui signifie que le nombre maximum d’occurrences d’une valeur individuelle dans un seul ARRAY d’entrée détermine le nombre d’occurrences de cette valeur dans l’ARRAY de sortie. Voir des exemples.

La fonction ignore les valeurs NULL dans la column et dans les ARRAYs de column. Si column ne contient que des valeurs NULL ou si la table contenant une column est vide, la fonction renvoie un ARRAY vide.

Exemples

L’exemple suivant illustre comment la fonction renvoie l’union des valeurs distinctes de deux ARRAYs :

CREATE TABLE union_test(a array);

INSERT INTO union_test
SELECT PARSE_JSON(‘[ 1, 1, 2]’)
UNION ALL
SELECT PARSE_JSON(‘[ 1, 2, 3]’);

-- Notice the multiset semantic (1 appears twice, because of the
-- first input array)
SELECT ARRAY_UNION_AGG(a) FROM union_test;

+-------------------------+
| ARRAY_UNION_AGG(A)      |
+-------------------------+
| [ 1, 1, 2, 3]           |
+-------------------------+

Voir Utilisation de tableaux pour calculer des valeurs distinctes pour les agrégations hiérarchiques.

Revenir au début