すべてのプロダクト
Search
ドキュメントセンター

Tablestore:match_all クエリ

最終更新日:Aug 07, 2026

Tablestore SDK for Python を使用して、検索インデックス内のすべての行を照合し、一致した行または一致した行の総数を返します。

前提条件

Tablestore SDK for Python をインストールし、クライアントを初期化します。

説明

match_all クエリは、フィールドや値に基づく条件なしで、検索インデックス内のすべてのデータを照合します。search メソッドを呼び出す際、クエリタイプを MatchAllQuery に設定します。

MatchAllQuery()

次の例では、検索インデックス内のすべての行を照合し、最大 10 行と一致した行の総数を返します。

query = MatchAllQuery()
search_query = SearchQuery(
    query,
    limit=10,
    get_total_count=True,
)
response = client.search(
    "example_table",
    "example_index",
    search_query,
    ColumnsToGet(return_type=ColumnReturnType.ALL),
)
print(response.total_count)
for row in response.rows:
    print(row)
説明

MatchAllQuery は、すべての一致した行に同じ関連度スコアを割り当てます。ソート順が指定されていない場合、返される行の順序は保証されません。一致した行の総数のみを取得するには、limit0 に設定します。総数の追跡を有効にすると、クエリオーバーヘッドが増加します。

パラメータ

検索リクエスト

search メソッドには、次のパラメータが含まれます。

名前

タイプ

説明

table_name (必須)

str

データテーブルの名前。

index_name (必須)

str

検索インデックスの名前。

search_query (必須)

SearchQuery

クエリ条件と共通のクエリ設定。

columns_to_get (任意)

ColumnsToGet

返される列の設定。このパラメータが指定されていない場合、プライマリキー列のみが返されます。

routing_keys (任意)

list

カスタムルーティングフィールドのプライマリキー値のリスト。カスタムルーティングが設定されていない場合、このパラメータを指定する必要はありません。

timeout_s (任意)

int

リクエストのタイムアウト (秒単位) 。このパラメータが指定されていない場合、クライアントレベルのタイムアウトが使用されます。

クエリ設定

search_querySearchQuery 型で、次のパラメータが含まれます。

名前

タイプ

説明

query (必須)

Query

クエリ条件。このパラメータを MatchAllQuery に設定します。

sort (任意)

Sort

クエリ結果のソート順。詳細については、「結果のソートとページネーション」をご参照ください。

get_total_count (任意)

bool

一致した行の総数を返すかどうかを指定します。デフォルト値: False。このパラメータを True に設定すると、クエリオーバーヘッドが増加します。

next_token (任意)

bytes

ページネーショントークン。次のページを取得するには、このパラメータを前のレスポンスの next_token に設定します。詳細については、「結果のソートとページネーション」をご参照ください。

offset (任意)

int

現在のクエリが開始されるオフセット。浅いページネーションにこのパラメータを使用します。

limit (任意)

int

返される行の最大数。このパラメータを 0 に設定すると、行データは返されません。

aggs (任意)

list[Agg]

アグリゲーションの設定。詳細については、「アグリゲーション」をご参照ください。

group_bys (任意)

list[BaseGroupBy]

グループ化の設定。詳細については、「アグリゲーション」をご参照ください。

collapse_field (任意)

Collapse

結果の折りたたみ設定。指定されたフィールドに基づいて重複する結果を削除します。詳細については、「クエリ結果の折りたたみ」をご参照ください。

クエリ条件

search_query.queryMatchAllQuery 型で、追加のパラメータはありません。

返される列

columns_to_getColumnsToGet 型で、次のパラメータが含まれます。

名前

タイプ

説明

column_names (任意)

list[str]

取得する属性列の名前。return_typeSPECIFIED の場合にのみ、このパラメータを指定します。

return_type (任意)

ColumnReturnType

取得する列のモード。NONE (デフォルト) はプライマリキー列のみを返します。SPECIFIEDcolumn_names 内の属性列を返します。ALL はテーブルのすべての属性列を返します。ALL_FROM_INDEX はインデックス付けされたすべての属性列を返します。

レスポンス

search メソッドは SearchResponse を返します。次の表では、主要なフィールドについて説明します。

フィールド

タイプ

説明

rows

list[Row]

現在のクエリによって返される行。行数は limit を超えません。

next_token

bytes

次のページのトークン。このフィールドが空でない場合、次のリクエストに渡して読み取りを続行してください。

total_count

int

一致した行の数。値は get_total_count の設定に依存します。

is_all_succeed

bool

すべてのインデックスパーティションがクエリされたかどうかを示します。値が False の場合、部分的な結果が返され、total_count は一致した行の実際の数より少ない可能性があります。

agg_results

list[AggResult]

アグリゲーション結果。aggs が設定されていない場合、このフィールドは空です。

group_by_results

list[GroupByResult]

グループ化結果。group_bys が設定されていない場合、このフィールドは空です。

search_hits

list[SearchHit]

検索ヒット。関連度スコア、ハイライト、一致する子行などの拡張情報が含まれます。

タプル互換レスポンス

Tablestore SDK for Python 5.2.0 以降、検索 API はタプルではなくレスポンスオブジェクトを返します。バージョン 5.1.0 以前はタプルを直接返します。バージョン 5.2.1 以降では、SearchResponse.v1_response() を呼び出して、以前のバージョンと互換性のあるタプルを取得できます。新しいコードでは、レスポンスフィールドが拡張された場合のアンパックエラーを回避するため、SearchResponse 属性に直接アクセスしてください。

(
    rows,
    next_token,
    total_count,
    is_all_succeed,
    agg_results,
    group_by_results,
    search_hits,
) = response.v1_response()