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