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

BITMAP_SUBSET_LIMIT

説明​

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

構文​

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

引数​

引数説明
<bitmap>Bitmap 値
<position>開始位置(その位置を含みます)
<cardinality_limit>要素数の上限

戻り値​

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

  • 引数が NULL または無効な値の場合は NULL を返します。

例​

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

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

実行結果:

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

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

select bitmap_to_string(bitmap_subset_limit(bitmap_from_string('1,2,3,4,5'), 4, 3)) value;

実行結果:

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

実行結果:

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

実行結果:

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

実行結果:

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