TO_BITMAP
描述
将一个无符号的长整型数转换为 Bitmap。
输入为取值在 0 ~ 18446744073709551615 区间的 unsigned bigint,输出为包含该元素的 bitmap。
语法
to_bitmap(<expr>)
参数
参数 | 描述 |
---|---|
<expr> | 无符号的长整型数或者字符串表示的数字,范围为 0 ~ 18446744073709551615 |
返回值
包含对应长整型数的 Bitmap。
当输入整型值不在对应范围内时或者字符串无法解析成数字时,则返回一个empty 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));
The result will be:
+-----------------------------------+-------------------------------+
| bitmap_to_string(to_bitmap(NULL)) | bitmap_count(to_bitmap(NULL)) |
+-----------------------------------+-------------------------------+
| | 0 |
+-----------------------------------+-------------------------------+