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

TO_BITMAP

Описание​

Преобразует беззнаковое значение bigint в Bitmap.

На вход подаётся беззнаковое значение bigint в диапазоне от 0 до 18446744073709551615, а на выходе получается Bitmap, содержащий этот элемент.

Синтаксис​

TO_BITMAP(<expr>)

Параметры​

ПараметрОписание
<expr>Беззнаковое значение bigint или число, представленное строкой, в диапазоне от 0 до 18446744073709551615

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

Bitmap, содержащий соответствующее значение bigint. Возвращает пустой Bitmap, если входное значение выходит за указанный диапазон.

Примеры​

Чтобы преобразовать целое число в Bitmap и подсчитать количество элементов в Bitmap:

select bitmap_to_string(to_bitmap(10)),bitmap_count(to_bitmap(10));

Результат:

+---------------------------------+-----------------------------+
| bitmap_to_string(to_bitmap(10)) | bitmap_count(to_bitmap(10)) |
+---------------------------------+-----------------------------+
| 10 | 1 |
+---------------------------------+-----------------------------+
select bitmap_to_string(to_bitmap("123")),bitmap_count(to_bitmap("123"));

Результат:

+------------------------------------+--------------------------------+
| bitmap_to_string(to_bitmap("123")) | bitmap_count(to_bitmap("123")) |
+------------------------------------+--------------------------------+
| 123 | 1 |
+------------------------------------+--------------------------------+

Чтобы преобразовать отрицательное целое число, выходящее за допустимый диапазон, в Bitmap, а затем в строку:

select bitmap_to_string(to_bitmap(-1)),bitmap_count(to_bitmap(-1));

Результат:

+---------------------------------+-----------------------------+
| bitmap_to_string(to_bitmap(-1)) | bitmap_count(to_bitmap(-1)) |
+---------------------------------+-----------------------------+
| | 0 |
+---------------------------------+-----------------------------+
select bitmap_to_string(to_bitmap("123ABC")),bitmap_count(to_bitmap("123ABC"));

Результат:

+---------------------------------------+-----------------------------------+
| bitmap_to_string(to_bitmap("123ABC")) | bitmap_count(to_bitmap("123ABC")) |
+---------------------------------------+-----------------------------------+
| | 0 |
+---------------------------------------+-----------------------------------+
select bitmap_to_string(to_bitmap(NULL)),bitmap_count(to_bitmap(NULL));

Результат:

+-----------------------------------+-------------------------------+
| bitmap_to_string(to_bitmap(NULL)) | bitmap_count(to_bitmap(NULL)) |
+-----------------------------------+-------------------------------+
| | 0 |
+-----------------------------------+-------------------------------+