

Les traductions sont fournies par des outils de traduction automatique. En cas de conflit entre le contenu d'une traduction et celui de la version originale en anglais, la version anglaise prévaudra.

# Fonction HLL\$1UNION\$1AGG
<a name="HLL_UNION_AGG"></a>

La fonction HLL\$1UNION\$1AGG combine plusieurs esquisses HLL en une seule esquisse unifiée. Il utilise l'algorithme HyperLogLog (HLL) pour combiner un groupe de croquis en un seul. Les requêtes peuvent utiliser les tampons obtenus pour calculer des nombres uniques approximatifs à l'aide de la `hll_sketch_estimate` fonction.

## Syntaxe
<a name="HLL_UNION_AGG-syntax"></a>

```
HLL_UNION_AGG ( expr [, allowDifferentLgConfigK ] )
```

## Argument
<a name="HLL_UNION_AGG-argument"></a>

 *expr*   
`BINARY`Expression contenant une esquisse générée par HLL\$1SKETCH\$1AGG.

*allowDifferentLgConfiguration K*  
Expression BOOLEAN facultative contrôlant s'il faut autoriser la fusion de deux esquisses avec des valeurs LGConfigk différentes. La valeur par défaut est `false`.

## Type de retour
<a name="HLL_UNION_AGG-return-type"></a>

La fonction HLL\$1UNION\$1AGG renvoie une mémoire tampon BINAIRE contenant l' HyperLogLog esquisse calculée en combinant les expressions d'entrée du même groupe. Lorsque le `allowDifferentLgConfigK` paramètre est défini`true`, l'esquisse du résultat utilise la plus petite des deux `lgConfigK` valeurs fournies.

## Exemples
<a name="HLL_UNION_AGG-examples"></a>

Les exemples suivants utilisent l'algorithme d'esquisse HyperLogLog (HLL) pour estimer le nombre unique de valeurs dans plusieurs esquisses HLL.

Le premier exemple estime le nombre unique de valeurs dans un ensemble de données.

```
SELECT hll_sketch_estimate(hll_union_agg(sketch, true))
    FROM (SELECT hll_sketch_agg(col) as sketch
            FROM VALUES (1) AS tab(col)
          UNION ALL
          SELECT hll_sketch_agg(col, 20) as sketch
            FROM VALUES (1) AS tab(col));
  1
```

La requête interne crée deux esquisses HLL :
+ La première instruction SELECT crée une esquisse à partir d'une valeur unique de 1. 
+ La deuxième instruction SELECT crée une esquisse à partir d'une autre valeur unique de 1, mais avec une précision de 20. 

La requête externe utilise la fonction HLL\$1UNION\$1AGG pour combiner les deux esquisses en une seule esquisse. Il applique ensuite la fonction HLL\$1SKETCH\$1ESTIMATE à cette esquisse combinée pour estimer le nombre unique de valeurs.

Le résultat de cette requête est le nombre unique estimé des valeurs de la `col` colonne, qui est`1`. Cela signifie que les deux valeurs d'entrée de 1 sont considérées comme uniques, même si elles ont la même valeur.

Le deuxième exemple inclut un paramètre de précision différent pour la fonction HLL\$1UNION\$1AGG. Dans ce cas, les deux esquisses HLL sont créées avec une précision de 14 bits, ce qui permet de les combiner avec succès à l'aide `hll_union_agg` du `true` paramètre.

```
SELECT hll_sketch_estimate(hll_union_agg(sketch, true))
    FROM (SELECT hll_sketch_agg(col, 14) as sketch
            FROM VALUES (1) AS tab(col)
          UNION ALL
          SELECT hll_sketch_agg(col, 14) as sketch
            FROM VALUES (1) AS tab(col));
  1
```

Le résultat final de la requête est le nombre unique estimé, qui dans ce cas l'est également`1`. Cela signifie que les deux valeurs d'entrée de 1 sont considérées comme uniques, même si elles ont la même valeur.