メインコンテンツまでスキップ
に最終更新

SUB_BITMAP

説明​

指定した位置から、指定した要素数の上限まで Bitmap の要素を抽出し、新しい Bitmap として返します。

構文​

SUB_BITMAP(<bitmap>, <position>, <cardinality_limit>)

引数​

引数説明
<bitmap>Bitmap 値
<position>開始位置(その位置を含みます)。負のインデックスを指定した場合、最後の要素が -1 です。
<cardinality_limit>要素数の上限

戻り値​

指定した範囲と要素数の上限に収まる部分 Bitmap を返します。

  • 引数が NULL の場合は NULL を返します。

例​

位置 0 から最大 3 要素の部分 Bitmap を取得します。

select bitmap_to_string(sub_bitmap(bitmap_from_string('1,0,1,2,3,1,5'), 0, 3)) value;

実行結果:

+-------+
| value |
+-------+
| 0,1,2 |
+-------+

位置 -3 から最大 2 要素の部分 Bitmap を取得します。

select bitmap_to_string(sub_bitmap(bitmap_from_string('1,0,1,2,3,1,5'), -3, 2)) value;

実行結果:

+-------+
| value |
+-------+
| 2,3 |
+-------+

位置 2 から最大 100 要素の部分 Bitmap を取得します。

select bitmap_to_string(sub_bitmap(bitmap_from_string('1,0,1,2,3,1,5'), 2, 100)) value;

実行結果:

+-------+
| value |
+-------+
| 2,3,5 |
+-------+
select bitmap_to_string(sub_bitmap(bitmap_from_string('1,0,1,2,3,1,5'), 2, NULL)) value;

実行結果:

+-------+
| value |
+-------+
| NULL |
+-------+