Cassandra-cql-collections
Cassandra-CQLコレクション
CQLは、Collectionデータ型を使用する機能を提供します。 これらのコレクションタイプを使用すると、1つの変数に複数の値を保存できます。 この章では、Cassandraでコレクションを使用する方法について説明します。
List
リストは次の場合に使用されます
- 要素の順序が維持されること、および
- 値は複数回保存されます。
リスト内の要素のインデックスを使用して、リストデータ型の値を取得できます。
リスト付きのテーブルを作成する
以下に、名前とメールという2つの列を持つサンプルテーブルを作成する例を示します。 複数のメールを保存するために、リストを使用しています。
リストへのデータの挿入
リスト内の要素にデータを挿入するときに、下に示すように、すべての値を角カッコ[]内にコンマで区切って入力します。
リストを更新する
以下に示すのは、 data というテーブルのリストデータ型を更新する例です。 ここで、リストに別のメールを追加しています。
検証
SELECTステートメントを使用してテーブルを検証すると、次の結果が得られます-
SET
Setは、要素のグループを格納するために使用されるデータ型です。 セットの要素は、ソートされた順序で返されます。
セット付きのテーブルの作成
次の例では、nameとphoneという2つの列を持つサンプルテーブルを作成します。 複数の電話番号を保存するために、setを使用しています。
セットへのデータの挿入
セット内の要素にデータを挿入するときに、以下に示すように、中括弧\ {}内にすべての値をコンマで区切って入力します。
セットの更新
次のコードは、data2という名前のテーブルのセットを更新する方法を示しています。 ここでは、セットに別の電話番号を追加しています。
検証
SELECTステートメントを使用してテーブルを検証すると、次の結果が得られます-
MAP
マップは、要素のキーと値のペアを格納するために使用されるデータ型です。
マップ付きのテーブルの作成
次の例は、名前と住所の2つの列を持つサンプルテーブルを作成する方法を示しています。 複数のアドレス値を保存するために、マップを使用しています。
マップへのデータの挿入
マップの要素にデータを挿入するときに、以下に示すように、すべての key:value ペアを中括弧\ {}内にコンマで区切って入力します。
セットの更新
次のコードは、data3という名前のテーブルのマップデータタイプを更新する方法を示しています。 ここでは、キーオフィスの値を変更しています。つまり、robinという名前の人のオフィスの住所を変更しています。
検証
SELECTステートメントを使用してテーブルを検証すると、次の結果が得られます-