bitmap_from_string
将字符串转换为 BITMAP。该字符串由一组以逗号分隔的 UINT64 数字组成。 例如,字符串“0, 1, 2”将被转换为 Bitmap,其中位 0、1 和 2 被设置。如果输入字段无效,将返回 NULL。
此函数在转换期间会删除输入字符串中的重复项。 它必须与其他函数一起使用,例如 bitmap_to_string,才能在终端上返回结果。
语法
BITMAP BITMAP_FROM_STRING(VARCHAR input)
返回值
返回 BITMAP 值。如果输入字符串无效,则返回 NULL。如果输入字符串为空,则返回空值。
示例
-- The input is empty and an empty value is returned.
MySQL > select bitmap_to_string(bitmap_empty());
+----------------------------------+
| bitmap_to_string(bitmap_empty()) |
+----------------------------------+
| |
+----------------------------------+
-- `0,1,2` is returned.
MySQL > select bitmap_to_string(bitmap_from_string("0, 1, 2"));
+-------------------------------------------------+
| bitmap_to_string(bitmap_from_string('0, 1, 2')) |
+-------------------------------------------------+
| 0,1,2 |
+-------------------------------------------------+
-- `-1` is an invalid input and NULL is returned.
MySQL > select bitmap_to_string(bitmap_from_string("-1, 0, 1, 2"));
+-----------------------------------+
| bitmap_from_string('-1, 0, 1, 2') |
+-----------------------------------+
| NULL |
+-----------------------------------+
-- 2^64 is an invalid input and NULL is returned.
MySQL > select bitmap_to_string(bitmap_from_string("0, 18446744073709551616"));
+-----------------------------------------------------------------+
| bitmap_to_string(bitmap_from_string('0, 18446744073709551616')) |
+-----------------------------------------------------------------+
| NULL |
+-----------------------------------------------------------------+
-- The input string is deduplicated.
MySQL > select bitmap_to_string(bitmap_from_string("0, 1, 1"));
+-------------------------------------------------+
| bitmap_to_string(bitmap_from_string('0, 1, 1')) |
+-------------------------------------------------+
| 0,1 |
+-------------------------------------------------+
关键字
BITMAP_FROM_STRING,BITMAP