範囲クエリは、指定された範囲に基づいてテーブルからデータを取得します。Text 型のフィールドの場合、フィールド値のいずれかのトークンが範囲条件を満たしていれば、一致と見なされます。
インターフェイス
範囲クエリは、検索操作または パラレルスキャン操作を使用して実行できます。 クエリタイプは RangeQuery です。
パラメーター
|
パラメーター |
説明 |
|
fieldName |
照合するフィールドの名前です。 |
|
from |
範囲の開始値です。 範囲条件を設定する場合、より大きい (>) を指定するには |
|
to |
範囲の終了値です。 範囲条件を設定する際は、 |
|
includeLower |
|
|
includeUpper |
|
|
query |
クエリタイプを |
|
sort |
指定された順序で結果をソートします。詳細については、「ソートとページング」をご参照ください。 |
|
getTotalCount |
一致した行の総数を返すかどうかを指定します。デフォルト値は 一致した行の総数を返すと、クエリのパフォーマンスに影響します。 |
|
tableName |
データテーブルの名前です。 |
|
indexName |
検索インデックスの名前です。 |
|
columnsToGet |
返す列を指定します。これには、
|
使用方法
範囲クエリは、コンソール、コマンドラインインターフェイス、または SDK を使用して実行できます。範囲クエリを実行する前に、次の準備が必要です。
-
Tablestore での操作を実行する権限を持つ Alibaba Cloud アカウントまたは RAM ユーザーが必要です。RAM ユーザーに Tablestore の操作権限を付与する方法については、「RAM ポリシーを使用した RAM ユーザーへの権限付与」をご参照ください。
Tablestore SDK または Tablestore CLI を使用してクエリを実行する場合、Alibaba Cloud アカウントまたは RAM ユーザー用に AccessKey ペアが作成されている必要があります。詳細については、「AccessKey の作成」をご参照ください。
-
データテーブルが作成されていること。詳細については、「テーブルの操作」をご参照ください。
-
データテーブルの検索インデックスが作成されていること。詳細については、「検索インデックスの作成」をご参照ください。
-
Tablestore SDK を使用してクエリを実行する場合は、OTSClient インスタンスが初期化されていること。詳細については、「Tablestore クライアントの初期化」をご参照ください。
-
Tablestore CLI を使用してクエリを実行する場合は、Tablestore CLI がダウンロードおよび起動され、アクセスするインスタンスとデータテーブルに関する情報が設定されていること。詳細については、「Tablestore CLI のダウンロード」、「Tablestore CLI の起動とアクセス情報の設定」、および「データテーブルの操作」をご参照ください。
課金
検索インデックスを使用してデータをクエリすると、消費された読み取りスループットに対して課金されます。詳細については、「検索インデックスの課金項目」をご参照ください。
よくある質問
関連ドキュメント
-
検索インデックスを使用してデータをクエリする場合、term クエリ、terms クエリ、match all クエリ、match クエリ、match phrase クエリ、prefix クエリ、range クエリ、wildcard クエリ、fuzzy クエリ、Boolean クエリ、geo クエリ、nested クエリ、KNN ベクトルクエリ、および exists クエリ を使用できます。 ビジネス要件に基づいてクエリ方法を選択し、複数のディメンションからデータをクエリできます。
ソートとページング機能を使用して、クエリ条件を満たす行をソートまたはページングできます。詳細については、「ソートとページング」をご参照ください。
折りたたみ (重複排除) 機能を使用して、特定の列に基づいて結果セットを折りたたむことができます。これにより、指定された型のデータがクエリ結果に一度だけ表示されるようになります。詳細については、「折りたたみ (重複排除)」をご参照ください。
-
データテーブル内のデータを分析する場合は、
SearchAPI の集計機能を使用するか、SQL クエリを実行します。たとえば、最小値、最大値、合計、および行の総数を取得できます。詳細については、「集計」および「SQL クエリ」をご参照ください。 -
行をソートする必要なくクエリ条件を満たすすべての行を取得する場合は、
ParallelScanAPI およびComputeSplitsAPI を呼び出して並列スキャン機能を使用できます。詳細については、「並列スキャン」をご参照ください。