OceanBaseデータベースでは、CREATE TABLE または ALTER TABLE を使用して高効率圧縮ビットマップ列を作成できます。
注意点
- 可視化されたクエリ結果を確認するには、クライアントに接続する際に
--binary-as-hexパラメータを追加し、バイナリ結果を16進数に変換する必要があります。
例
CREATE TABLE ステートメントを使用して、高効率圧縮ビットマップ列を持つテーブルを作成する構文例は以下のとおりです:
CREATE TABLE t1 (rb ROARINGBITMAP);
ALTER TABLE ステートメントを使用して、既存のテーブルに高効率圧縮ビットマップ列を追加または削除する構文例は以下のとおりです:
ALTER TABLE t1 ADD COLUMN rb2 ROARINGBITMAP;
ALTER TABLE t1 DROP COLUMN rb2;
高効率圧縮ビットマップ列にデフォルト値を設定する構文例は以下のとおりです:
ALTER TABLE t1 MODIFY COLUMN rb ROARINGBITMAP DEFAULT x'0100';
高効率圧縮ビットマップデータの書き込みとクエリの例は以下のとおりです:
// テストテーブルの作成
obclient> CREATE TABLE t2 (
rb ROARINGBITMAP
);
DESC t2;
// テストデータの挿入
obclient> INSERT INTO t2 VALUES (rb_from_string('1,2,3'));
INSERT INTO t2 VALUES (x'0100');
// テストテーブルのクエリ
obclient> SELECT * FROM t2;
実行結果は次のとおりです:
+----------------------------------+
| rb |
+----------------------------------+
| 0x010303010000000200000003000000 |
| 0x0100 |
+----------------------------------+
2 rows in set