INキーワードを使用した取得

INキーワードを持つSELECTコマンドを使用します。

INキーワードは、まとめてフェッチするクラスター化カラムの集合を定義して、CQL行の「複数取得」をサポートすることができます。等価またはグループ包含について前のカラムがすべて定義されている場合は、単一のクラスター化カラムを定義できます。あるいは、前のカラムの等価またはグループ格納がすべてクエリーされている限り、いくつかのクラスター化カラムを定義して行を収集できます。定義されたクラスター化カラムは、不等価にクエリーできます。

INORDER BYの両方を使用する際は、cqlshにあるPAGING OFFコマンドを使用して、ページングを停止する必要があることに注意してください。

手順

  • ページングを停止します。
    cqlsh> PAGING OFF
  • 結果を取得し降順でソートします。
    cqlsh> SELECT * FROM cycling.cyclist_cat_pts WHERE category IN ('Time-trial', 'Sprint') ORDER BY id DESC;
  • または、結果を取得し昇順でソートします。

    結果を取得するには、SELECTコマンドを使用します。

    cqlsh> SELECT * FROM cycling.cyclist_cat_pts WHERE category IN ('Time-trial', 'Sprint') ORDER BY id ASC;
  • 複数のクラスター化カラムを使用して、行を取得します。この例では、いくつかのレースのパーティション・キーrace_idsを検索しますが、パーティション・キーを1つの値の等価として構成することもできます。
    cqlsh> SELECT * FROM cycling.calendar WHERE race_id IN (100, 101, 102) AND (race_start_date, race_end_date) IN (('2015-05-09','2015-05-31'),('2015-05-06', '2015-05-31'));
  • 複数のクラスター化カラムおよび不等価を使用して、数行を取得します。
    cqlsh> SELECT * FROM cycling.calendar WHERE race_id IN (100, 101, 102) AND (race_start_date, race_end_date) >= ('2015-05-09','2015-05-24');