メインコンテンツまでスキップ
バージョン: Latest-3.4

bitmap_from_string

文字列を BITMAP に変換します。この文字列は、カンマで区切られた一連の UINT64 数字で構成されています。例えば、「0, 1, 2」という文字列は、ビット 0, 1, 2 がセットされた Bitmap に変換されます。入力フィールドが無効な場合、NULL が返されます。

この関数は変換中に入力文字列を重複排除します。他の関数、例えば bitmap_to_string と組み合わせて、ターミナル上で結果を返す必要があります。

構文

BITMAP BITMAP_FROM_STRING(VARCHAR input)

戻り値

BITMAP 値を返します。入力文字列が無効な場合、NULL が返されます。入力文字列が空の場合、空の値が返されます。

-- 入力が空で、空の値が返されます。
MySQL > select bitmap_to_string(bitmap_empty());
+----------------------------------+
| bitmap_to_string(bitmap_empty()) |
+----------------------------------+
| |
+----------------------------------+

-- `0,1,2` が返されます。
MySQL > select bitmap_to_string(bitmap_from_string("0, 1, 2"));
+-------------------------------------------------+
| bitmap_to_string(bitmap_from_string('0, 1, 2')) |
+-------------------------------------------------+
| 0,1,2 |
+-------------------------------------------------+

-- `-1` は無効な入力で、NULL が返されます。
MySQL > select bitmap_to_string(bitmap_from_string("-1, 0, 1, 2"));
+-----------------------------------+
| bitmap_from_string('-1, 0, 1, 2') |
+-----------------------------------+
| NULL |
+-----------------------------------+

-- 2^64 は無効な入力で、NULL が返されます。
MySQL > select bitmap_to_string(bitmap_from_string("0, 18446744073709551616"));
+-----------------------------------------------------------------+
| bitmap_to_string(bitmap_from_string('0, 18446744073709551616')) |
+-----------------------------------------------------------------+
| NULL |
+-----------------------------------------------------------------+

-- 入力文字列は重複排除されます。
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