CREATE MATERIALIZED VIEW
Cassandra 3.0以降でマテリアライズド・ビューを作成します。
構文
CREATE MATERIALIZED VIEW [IF NOT EXISTS] keyspace_name.view_name AS SELECT column1, column2, ...FROM keyspace_name.table_name WHERE column1 IS NOT NULL AND column2 IS NOT NULL ...PRIMARY KEY(column1, column2, ...)
構文の凡例
- 大文字はリテラルを意味する
- 小文字は、リテラルでないことを意味する
- イタリック体は指定が任意であることを意味する
- パイプ(|)記号はORまたはAND/ORを意味する
- 省略記号(...)は繰り返し可能を意味する
- 範囲記号「(」および「)」はリテラルではなく、範囲を示す
この構文には、CQL文の終了となるセミコロンは含まれていません。
説明
Cassandra 3.0以降でCREATE MATERIALIZED VIEW
を使用すると、指定されたベース・テーブルから新しいマテリアライズド・ビューが作成されます。
マテリアライズド・ビューを作成するには、特定の要件を満たす必要があります。
- 元のテーブルのプライマリ・キーのカラムは、マテリアライズド・ビューのプライマリ・キーの一部である必要があります。
- マテリアライズド・ビューのプライマリ・キーには1つのみの新しいカラムを追加できます。
例
マテリアライズド・ビューがテーブルから作成されます。プライマリ・キー内で使用されるフィールドは、WHERE
句内のNULL以外の値に制約される必要があります。
CREATE MATERIALIZED VIEW cyclist_by_age AS SELECT age, birthday, name, country FROM cyclist_mv WHERE age IS NOT NULL AND cid IS NOT NULL PRIMARY KEY (age, cid);