Перейти к основному содержимому
Перейти к основному содержимому

groupBitmap

groupBitmap

Впервые появилась в: v20.1

Создаёт битовую карту (битовый массив) из столбца беззнаковых целых чисел, затем возвращает количество уникальных значений (мощность множества) в этой битовой карте. Если добавить суффикс-комбинатор -State, вместо возвращения количества она возвращает сам объект битовой карты.

Синтаксис

groupBitmap(expr)
groupBitmapState(expr)

Аргументы

  • expr — выражение, результат которого имеет тип UInt*. UInt*

Возвращаемое значение

Возвращает количество значений типа UInt64 или объект bitmap при использовании -State. UInt64

Примеры

Пример использования

CREATE TABLE t (UserID UInt32) ENGINE = Memory;
INSERT INTO t VALUES (1), (1), (2), (3);

SELECT groupBitmap(UserID) AS num FROM t;
┌─num─┐
│   3 │
└─────┘