Skip to main content
Skip to main content
Edit this page

Функции для битовых масок

bitmapBuild​

Создаёт битовый массив из массива целочисленных значений.

Аргументы

  • array – массив типа UInt*.

Пример

bitmapToArray​

Преобразует битовый массив в массив целочисленных значений.

Аргументы

  • bitmap – битовый массив.

Пример

bitmapSubsetLimit​

Создает подмножество битмапа с n элементами, расположенными между range_start и cardinality_limit.

Синтаксис

Аргументы

  • bitmap – битмап. Bitmap object.
  • range_start – начальная точка подмножества. UInt32.
  • cardinality_limit – верхний предел подмножества. UInt32.

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

Подмножество битмапа.

Тип: Bitmap object.

Пример

Запрос:

Результат:

subBitmap​

Возвращает элементы битмапа, начиная с позиции offset. Число возвращаемых элементов ограничивается параметром cardinality_limit. Аналог строковой функции substring), но для битмапа.

Синтаксис

Аргументы

  • bitmap – битмап. Тип: Bitmap object.
  • offset – позиция первого элемента возвращаемого подмножества. Тип: UInt32.
  • cardinality_limit – максимальное число элементов возвращаемого подмножества. Тип: UInt32.

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

Подмножество битмапа.

Тип: Bitmap object.

Пример

Запрос:

Результат:

bitmapContains​

Проверяет вхождение элемента в битовый массив.

Аргументы

  • haystack – объект Bitmap, в котором функция ищет значение.
  • needle – значение, которое функция ищет. Тип — UInt32.

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

  • 0 — если в haystack нет needle.
  • 1 — если в haystack есть needle.

Тип — UInt8.

Пример

bitmapHasAny​

Проверяет, имеют ли два битовых массива хотя бы один общий элемент.

Если вы уверены, что bitmap2 содержит строго один элемент, используйте функцию bitmapContains. Она работает эффективнее.

Аргументы

  • bitmap* – массив любого типа с набором элементов.

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

  • 1, если bitmap1 и bitmap2 имеют хотя бы один одинаковый элемент.
  • 0, в противном случае.

Пример

bitmapHasAll​

Аналогично функции hasAll(array, array) возвращает 1 если первый битовый массив содержит все элементы второго, 0 в противном случае. Если второй аргумент является пустым битовым массивом, то возвращает 1.

Аргументы

  • bitmap – битовый массив.

Пример

bitmapAnd​

Логическое И для двух битовых массивов. Результат — новый битовый массив.

Аргументы

  • bitmap – битовый массив.

Пример

bitmapOr​

Логическое ИЛИ для двух битовых массивов. Результат — новый битовый массив.

Аргументы

  • bitmap – битовый массив.

Пример

bitmapXor​

Логическое исключающее ИЛИ для двух битовых массивов. Результат — новый битовый массив.

Аргументы

  • bitmap – битовый массив.

Пример

bitmapAndnot​

Логическое отрицание И для двух битовых массивов. Результат — новый битовый массив.

Аргументы

  • bitmap – битовый массив.

Пример

bitmapCardinality​

Возвращает кардинальность битового массива в виде значения типа UInt64.

Аргументы

  • bitmap – битовый массив.

Пример

bitmapAndCardinality​

Выполняет логическое И и возвращает кардинальность (UInt64) результирующего битового массива.

Аргументы

  • bitmap – битовый массив.

Пример

bitmapOrCardinality​

Выполняет логическое ИЛИ и возвращает кардинальность (UInt64) результирующего битового массива.

Аргументы

  • bitmap – битовый массив.

Пример

bitmapXorCardinality​

Выполняет логическое исключающее ИЛИ и возвращает кардинальность (UInt64) результирующего битового массива.

Аргументы

  • bitmap – битовый массив.

Пример

bitmapAndnotCardinality​

Выполняет логическое отрицание И и возвращает кардинальность (UInt64) результирующего битового массива.

Аргументы

  • bitmap – битовый массив.

Пример