---
title: "位图输出函数 - OceanBase 数据库 V4.3.2 | OceanBase 文档中心"
description: 位图输出函数 位图输出函数用于选择位图数据输出形式，如以字符串的形式依次输出位图数据的每一个元素，并以逗号隔开。OceanBase 数据库当前所支持的位图输出函数包括 rb_to_varbinary() 和 rb_to_string() 。 rb_to_varbinary rb_to_varbinary() 函数用于…
---
切换语言

- 中文站 - 简体中文
- International - English
- 日本站 - 日本語

文档反馈![](https://mdn.alipayobjects.com/huamei_22khvb/afts/img/A*P8CuR4UJ_FkAAAAAAAAAAAAADiGDAQ/original) OceanBase 数据库分布式版 - V 4.3.2

# 位图输出函数

更新时间：2024-07-22 23:00:00

[编辑](https://github.com/oceanbase/oceanbase-doc/edit/V4.3.2/zh-CN/700.reference/500.sql-reference/100.sql-syntax/200.common-tenant-of-mysql-mode/400.functions-of-mysql-mode/940.roaring-bitmap-functions-of-mysql-mode/600.roaring-bitmap-output-functions-of-mysql-mode.md)  

位图输出函数用于选择位图数据输出形式，如以字符串的形式依次输出位图数据的每一个元素，并以逗号隔开。OceanBase 数据库当前所支持的位图输出函数包括 `rb_to_varbinary()` 和 `rb_to_string()`。

## rb_to_varbinary

`rb_to_varbinary()` 函数用于以 varbinary 的形式输出位图数据。语法如下：

```sql
rb_to_varbinary(rb, [format])

```

`format` 参数可选，如需配置当前仅支持 `roaring`。配置后，输出的二进制数据类型只有 BITMAP_32 和 BITMAP_64 两种兼容格式。如果不配置 `format`，则默认输出格式为 OceanBase 类型的 `varbinary` 格式（包含 BITMAP_32 和 BITMAP_6 在内的 7 种子类型）。

示例如下：

```sql
SELECT rb_to_varbinary((1,2,3));
+------------------------------------------------------------------------------------+
| rb_to_varbinary(rb_from_string('1,2,3'))                                           |
+------------------------------------------------------------------------------------+
| 0x010303010000000200000003000000                                                   |
+------------------------------------------------------------------------------------+
1 row in set

```

```sql
SELECT rb_to_varbinary((1,2,3),'roaring');
+----------------------------------------------------------------------------------------------------------+
| rb_to_varbinary(rb_from_string('1,2,3'), 'roaring')                                                      |
+----------------------------------------------------------------------------------------------------------+
| 0x01053A300000010000000000020010000000010002000300                                                       |
+----------------------------------------------------------------------------------------------------------+
1 row in set

```

## rb_to_string

`rb_to_string()` 函数以字符串的形式依次输出位图数据的每一个元素，并以逗号隔开。其中元素的输出格式为 UINT64，输出的最大元素个数为 1000000。语法如下：

```sql
rb_to_string(rb)

```

示例如下：

```sql
SELECT rb_to_string(rb_from_string('1,2,3'));
+---------------------------------------+
| rb_to_string(rb_from_string('1,2,3')) |
+---------------------------------------+
| 1,2,3                                 |
+---------------------------------------+
1 row in set

```

```sql
SELECT rb_to_string(x'010101000000');
+-------------------------------+
| rb_to_string(x'010101000000') |
+-------------------------------+
| 1                             |
+-------------------------------+
1 row in set

```

 上一篇 下一篇 ![有帮助](https://gw.alipayobjects.com/mdn/ob_asset/afts/img/A*y6ocSqN8cqsAAAAAAAAAAAAAARQnAQ)![无帮助](https://gw.alipayobjects.com/mdn/ob_asset/afts/img/A*BG9IQJyLHF8AAAAAAAAAAAAAARQnAQ)![反馈](https://gw.alipayobjects.com/mdn/ob_asset/afts/img/A*eTWdQKCRKHwAAAAAAAAAAAAAARQnAQ)[AI](https://www.oceanbase.com/obi) 咨询热线
