Terms クエリは Term クエリに似ています。Terms クエリは複数のキーワードをサポートしています。列の値が少なくとも 1 つのキーワードと一致する場合、データ行が返されます。Terms クエリは、SQL ステートメントの IN 演算子と同じ方法で使用できます。
API 操作
Search または ParallelScan 操作を呼び出し、クエリタイプを TermsQuery に設定して、Terms クエリを実行できます。
パラメーター
パラメーター | 説明 |
query | クエリのタイプ。クエリパラメーターを TermsQuery に設定します。 |
fieldName | 一致させるフィールドの名前。 |
terms | Terms クエリを実行するときに、フィールドの値と一致させるために使用されるキーワード。最大 1,024 個のキーワードを指定できます。 列の値が少なくとも 1 つのキーワードと一致する場合、データ行が返されます。 |
getTotalCount | クエリ条件を満たす行の総数を返すかどうかを指定します。このパラメーターのデフォルト値は false で、クエリ条件を満たす行の総数は返されません。 このパラメーターを true に設定すると、クエリのパフォーマンスが低下します。 |
weight | BM25 ベースのキーワード関連性スコアを計算するために、クエリ対象のフィールドに割り当てる重み。このパラメーターは、全文検索シナリオで使用されます。クエリ対象のフィールドに高い重みを指定すると、そのフィールドの BM25 ベースのキーワード関連性スコアが高くなります。このパラメーターの値は正の浮動小数点数です。 このパラメーターは、返される行の数には影響しません。ただし、このパラメーターは、クエリ結果の BM25 ベースのキーワード関連性スコアに影響します。 |
tableName | データテーブルの名前。 |
indexName | 検索インデックスの名前。 |
columnsToGet | クエリ条件を満たす各行のすべての列を返すかどうかを指定します。このパラメーターには、returnAll フィールドと columns フィールドを指定できます。 returnAll フィールドのデフォルト値は false で、すべての列が返されるわけではないことを指定します。この場合、columns フィールドを使用して、返す列を指定できます。返す列を指定しない場合は、主キー列のみが返されます。 returnAll フィールドを true に設定すると、すべての列が返されます。 |
方法
Tablestore コンソール、Tablestore CLI、または Tablestore SDK を使用して、Terms クエリを実行できます。Terms クエリを実行する前に、以下の準備が整っていることを確認してください。
Tablestore で操作を実行するための権限を持つ Alibaba Cloud アカウントまたは RAM ユーザーを持っていること。RAM ユーザーに Tablestore 操作権限を付与する方法については、RAM ポリシーを使用して RAM ユーザーに権限を付与する を参照してください。
Tablestore SDK または Tablestore CLI を使用してクエリを実行する場合は、Alibaba Cloud アカウントまたは RAM ユーザーの AccessKey ペアが作成されます。詳細については、AccessKey ペアを作成する を参照してください。
データテーブルが作成されていること。詳細については、テーブルの操作 を参照してください。
データテーブルの検索インデックスが作成されていること。詳細については、検索インデックスを作成する を参照してください。
Tablestore SDK を使用してクエリを実行する場合は、OTSClient インスタンスが初期化されていること。詳細については、OTSClient インスタンスを初期化する を参照してください。
Tablestore CLI を使用してクエリを実行する場合は、Tablestore CLI がダウンロードされて起動され、アクセスするインスタンスの情報が構成されていること。詳細については、Tablestore CLI をダウンロードする および Tablestore CLI を起動し、アクセス情報を構成する を参照してください。
課金ルール
検索インデックスを使用してデータをクエリする場合、消費された読み取りスループットに対して課金されます。詳細については、検索インデックスの課金対象項目 を参照してください。
FAQ
参考資料
検索インデックスを使用してデータをクエリする場合、次のクエリメソッドを使用できます。Term クエリ、Terms クエリ、Match All クエリ、Match クエリ、Match Phrase クエリ、Prefix クエリ、Range クエリ、Wildcard クエリ、Fuzzy クエリ、Boolean クエリ、Geo クエリ、Nested クエリ、KNN ベクタークエリ、Exists クエリ。ビジネス要件に基づいてクエリメソッドを選択し、複数のディメンションからデータをクエリできます。
並べ替え機能とページング機能を使用して、クエリ条件を満たす行を並べ替えたりページネーションしたりできます。詳細については、並べ替えとページングの実行 を参照してください。
Collapse (個別) 機能を使用して、特定の列に基づいて結果セットを折り畳むことができます。これにより、指定されたタイプのデータはクエリ結果に 1 回だけ表示されます。詳細については、Collapse (個別) を参照してください。
データテーブルのデータを分析する場合は、Search 操作の集計機能を使用するか、SQL ステートメントを実行できます。たとえば、最小値、最大値、合計、行の総数などを取得できます。詳細については、集計 および SQL クエリ を参照してください。
行を並べ替えることなく、クエリ条件を満たすすべての行を取得する場合は、ParallelScan 操作と ComputeSplits 操作を呼び出して、並列スキャン機能を使用できます。詳細については、並列スキャン を参照してください。