Saltar al contenido principal

uniqHLL12

Introducido en: v1.1.0 Calcula el número aproximado de valores distintos del argumento mediante el algoritmo HyperLogLog.
No recomendamos usar esta función. En la mayoría de los casos, utilice la función uniq o uniqCombined.
Esta función calcula un hash para todos los parámetros de la función de agregado y luego lo usa en los cálculos. Utiliza el algoritmo HyperLogLog para aproximar el número de valores distintos del argumento.Se utilizan 2^12 celdas de 5 bits. El tamaño del estado es ligeramente superior a 2,5 KB. El resultado no es muy preciso (hasta ~10% de error) para conjuntos de datos pequeños (<10K elementos). Sin embargo, el resultado es bastante preciso para conjuntos de datos con alta cardinalidad (10K-100M), con un error máximo de ~1,6%. A partir de 100M, el error de estimación aumenta y la función devolverá resultados muy imprecisos para conjuntos de datos con cardinalidad extremadamente alta (1B+ elementos).Proporciona un resultado determinista (no depende del orden de procesamiento de la consulta).
Sintaxis
uniqHLL12(x[, ...])
Argumentos Valor devuelto Devuelve un número de tipo UInt64 que representa el número aproximado de valores distintos de los argumentos. UInt64 Ejemplos Uso básico
Query
CREATE TABLE example_hll
(
    id UInt32,
    category String
)
ENGINE = Memory;

INSERT INTO example_hll VALUES
(1, 'A'), (2, 'B'), (3, 'A'), (4, 'C'), (5, 'B'), (6, 'A');

SELECT uniqHLL12(category) AS hll_unique_categories
FROM example_hll;
Response
┌─hll_unique_categories─┐
│                     3 │
└───────────────────────┘
Ver también
Última modificación el 10 de junio de 2026