Condividi tramite


approx_count_distinct funzione di aggregazione

Si applica a:segno di spunta sì Databricks SQL segno di spunta sì Databricks Runtime

Restituisce il numero stimato di values distinti in expr all'interno del gruppo.

L'implementazione usa la versione densa dell'algoritmo HyperLogLog++ (HLL++), uno stato dell'algoritmo di stima della cardinalità dell'arte.

I risultati sono accurati all'interno di un valore predefinito pari al 5%, che deriva dal valore della deviazione standard relativa massima, sebbene sia configurabile con il relativeSD parametro come indicato di seguito.

Sintassi

approx_count_distinct(expr[, relativeSD]) [FILTER ( WHERE cond ) ]

Questa funzione può anche essere richiamata come funzione window usando la clausola OVER.

Argomenti

  • expr: può essere di qualsiasi tipo per cui è definita l'equivalenza.
  • relativeSD: definisce la deviazione standard relativa massima consentita.
  • cond: espressione booleana facoltativa che filtra le righe usate per l'aggregazione.

Valori restituiti

UN BIGINT.

Esempi

> SELECT approx_count_distinct(col1) FROM VALUES (1), (1), (2), (2), (3) tab(col1);
 3

> SELECT approx_count_distinct(col1) FILTER(WHERE col2 = 10)
    FROM VALUES (1, 10), (1, 10), (2, 10), (2, 10), (3, 10), (1, 12) AS tab(col1, col2);
 3