

Le traduzioni sono generate tramite traduzione automatica. In caso di conflitto tra il contenuto di una traduzione e la versione originale in Inglese, quest'ultima prevarrà.

# Funzione HLL\$1UNION
<a name="HLL_UNION"></a>

La funzione HLL\$1UNION combina due schizzi HLL in un unico schizzo unificato. Utilizza l'algoritmo HyperLogLog (HLL) per combinare due schizzi in un unico schizzo. Le query possono utilizzare i buffer risultanti per calcolare conteggi univoci approssimativi sotto forma di numeri interi lunghi con la funzione. `hll_sketch_estimate`

## Sintassi
<a name="HLL_UNION-syntax"></a>

```
HLL_UNION (( expr1, expr2 [, allowDifferentLgConfigK ] ))
```

## Argomento
<a name="HLL_UNION-argument"></a>

 *Exprn*   
Un'`BINARY`espressione contenente uno schizzo generato da HLL\$1SKETCH\$1AGG.

*allowDifferentLgConfigK*  
Un'espressione BOOLEAN opzionale che controlla se consentire l'unione di due schizzi con valori LGConfigK diversi. Il valore predefinito è `false`.

## Tipo restituito
<a name="HLL_UNION-return-type"></a>

La funzione HLL\$1UNION restituisce un buffer BINARY contenente lo HyperLogLog schizzo calcolato come risultato della combinazione delle espressioni di input. Quando il `allowDifferentLgConfigK` parametro è`true`, lo schizzo del risultato utilizza il più piccolo dei due valori forniti. `lgConfigK`

## Esempi
<a name="HLL_UNION-examples"></a>

Gli esempi seguenti utilizzano l'algoritmo di disegno HyperLogLog (HLL) per stimare il conteggio univoco dei valori su due colonne `col1` e `col2` in un set di dati.

 La `hll_sketch_agg(col1)` funzione crea uno schizzo HLL per i valori univoci nella colonna. `col1` 

La `hll_sketch_agg(col2)` funzione crea uno schizzo HLL per i valori univoci nella colonna col2. 

La `hll_union(...)` funzione combina i due schizzi HLL creati nei passaggi 1 e 2 in un unico schizzo HLL unificato.

La `hll_sketch_estimate(...)` funzione utilizza lo schizzo HLL combinato e stima il conteggio univoco dei valori per entrambi e. `col1` `col2`

La `FROM VALUES` clausola genera un set di dati di test con 5 righe, dove `col1` contiene i valori 1, 1, 2, 2 e 3 e `col2` contiene i valori 4, 4, 5, 5 e 6. 

Il risultato di questa query è il conteggio unico stimato di valori per entrambi `col1` e`col2`, che è 6. L'algoritmo di disegno HLL offre un modo efficiente per stimare il numero di elementi unici, anche per set di dati di grandi dimensioni, senza dover memorizzare l'intero set di valori univoci. In questo esempio, la `hll_union` funzione viene utilizzata per combinare gli schizzi HLL delle due colonne, il che consente di stimare il conteggio univoco per l'intero set di dati, anziché solo per ogni colonna singolarmente.

```
SELECT hll_sketch_estimate(
  hll_union(
    hll_sketch_agg(col1),
    hll_sketch_agg(col2)))
  FROM VALUES
    (1, 4),
    (1, 4),
    (2, 5),
    (2, 5),
    (3, 6) AS tab(col1, col2);
  6
```

La differenza tra l'esempio seguente e quello precedente è che il parametro di precisione (12 bit) non è specificato nella chiamata alla funzione. `hll_sketch_agg` In questo caso, viene utilizzata la precisione predefinita di 14 bit, che può fornire una stima più accurata del conteggio unico rispetto all'esempio precedente che utilizzava 12 bit di precisione.

```
SELECT hll_sketch_estimate(
  hll_union(
    hll_sketch_agg(col1, 14),
    hll_sketch_agg(col2, 14)))
  FROM VALUES
    (1, 4),
    (1, 4),
    (2, 5),
    (2, 5),
    (3, 6) AS tab(col1, col2);
```