Последнее обновление
HLL_UNION_AGG
Описание
Агрегатная функция HLL_UNION_AGG в основном используется для объединения нескольких структур данных HyperLogLog и приблизительной оценки кардинальности после объединения.
Синтаксис
hll_union_agg(<hll>)
Параметры
| Параметр | Описание |
|---|---|
<hll> | Вычисляемое выражение. Поддерживается тип HLL. |
Возвращаемое значение
Возвращает значение кардинальности типа BIGINT. Если в группе нет допустимых данных, возвращает 0.
Пример
-- setup
create table test_uv(
id int,
uv_set string
) distributed by hash(id) buckets 1
properties ("replication_num"="1");
insert into test_uv values
(1, ('a')),
(1, ('b')),
(2, ('c')),
(2, ('d')),
(3, null);
select HLL_UNION_AGG(HLL_HASH(uv_set)) from test_uv;
+---------------------------------+
| HLL_UNION_AGG(HLL_HASH(uv_set)) |
+---------------------------------+
| 4 |
+---------------------------------+
select HLL_UNION_AGG(HLL_HASH(uv_set)) from test_uv where uv_set is null;
+---------------------------------+
| HLL_UNION_AGG(HLL_HASH(uv_set)) |
+---------------------------------+
| 0 |
+---------------------------------+