

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\_SKETCH\_AGG
<a name="HLL_SKETCH_AGG"></a>

La funzione di aggregazione HLL\_SKETCH\_AGG crea uno sketch HLL dai valori nella colonna specificata. Restituisce un tipo di dati HLLSKETCH che incapsula i valori delle espressioni di input. 

La funzione di aggregazione HLL\_SKETCH\_AGG funziona con qualsiasi tipo di dati e ignora i valori NULL. 

Quando non ci sono righe in una tabella o tutte le righe sono NULL, lo schizzo risultante non ha coppie indice-valore come `{"version":1,"logm":15,"sparse":{"indices":[],"values":[]}}`.

## Sintassi
<a name="HLL_SKETCH_AGG-synopsis"></a>

```
HLL_SKETCH_AGG (aggregate_expression[, lgConfigK ] )
```

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

 *aggregate\_expression*   
Qualsiasi espressione di tipo INT, BIGINT, STRING o BINARY rispetto alla quale verrà eseguito un conteggio univoco. Tutti i `NULL` valori vengono ignorati.

*LGConfigK*  
Una costante INT opzionale compresa tra 4 e 21 inclusi con 12 di default. Il log-base-2 di K, dove K è il numero di bucket o slot per lo schizzo.

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

La funzione HLL\_SKETCH\_AGG restituisce un buffer BINARY non NULL contenente lo sketch calcolato poiché consuma e aggrega tutti i valori di input nel gruppo di aggregazione. HyperLogLog 

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

Gli esempi seguenti utilizzano l'algoritmo HyperLogLog (HLL) per stimare il numero distinto di valori nella colonna. `col` La `hll_sketch_agg(col, 12)` funzione aggrega i valori nella colonna col, creando uno schizzo HLL con una precisione di 12. La `hll_sketch_estimate()` funzione viene quindi utilizzata per stimare il numero distinto di valori in base allo schizzo HLL generato. Il risultato finale della query è 3, che rappresenta il conteggio distinto stimato di valori nella `col` colonna. In questo caso, i valori distinti sono 1, 2 e 3. 

```
SELECT hll_sketch_estimate(hll_sketch_agg(col, 12))
    FROM VALUES (1), (1), (2), (2), (3) tab(col);
  3
```

L'esempio seguente utilizza anche l'algoritmo HLL per stimare il numero distinto di valori nella `col` colonna, ma non specifica un valore di precisione per lo sketch HLL. In questo caso, utilizza la precisione predefinita di 14. La `hll_sketch_agg(col)` funzione prende i valori nella `col` colonna e crea uno schizzo HyperLogLog (HLL), che è una struttura di dati compatta che può essere utilizzata per stimare il numero distinto di elementi. La `hll_sketch_estimate(hll_sketch_agg(col))` funzione utilizza lo schizzo HLL creato nel passaggio precedente e calcola una stima del numero distinto di valori nella colonna. `col` Il risultato finale della query è 3, che rappresenta il numero distinto stimato di valori nella colonna. `col` In questo caso, i valori distinti sono 1, 2 e 3. 

```
SELECT hll_sketch_estimate(hll_sketch_agg(col))
FROM VALUES (1), (1), (2), (2), (3) tab(col);
3
```