全部产品
Search
文档中心

Tablestore:Kueri match all

更新时间:Jul 02, 2025

Anda dapat menggunakan kueri match all untuk mencocokkan semua baris dalam tabel, menanyakan jumlah total baris, dan mengembalikan beberapa baris acak.

Prasyarat

Parameter

Parameter

Deskripsi

query

Jenis kueri. Atur parameter kueri ke MatchAllQuery.

table_name

Nama tabel data.

index_name

Nama indeks pencarian.

limit

Jumlah maksimum baris yang ingin Anda kembalikan dalam kueri saat ini.

Untuk hanya menanyakan jumlah baris yang memenuhi kondisi kueri tanpa mengembalikan data spesifik, Anda dapat mengatur limit ke 0. Dengan cara ini, Tablestore mengembalikan jumlah baris yang memenuhi kondisi kueri tanpa data spesifik dari tabel.

get_total_count

Menentukan apakah akan mengembalikan jumlah total baris yang memenuhi kondisi kueri. Nilai default: false. Nilai false menentukan bahwa jumlah total baris yang memenuhi kondisi kueri tidak dikembalikan.

Jika Anda mengatur parameter ini ke true, performa kueri akan terpengaruh.

columns_to_get

Menentukan apakah akan mengembalikan semua kolom dari setiap baris yang memenuhi kondisi kueri.

  • Jika Anda mengatur return_type ke ColumnReturnType.SPECIFIED, Anda dapat menggunakan column_names untuk menentukan kolom yang ingin Anda kembalikan.

  • Jika Anda mengatur return_type ke ColumnReturnType.ALL, semua kolom akan dikembalikan.

  • Jika Anda mengatur return_type ke ColumnReturnType.NONE, hanya kolom kunci utama yang akan dikembalikan.

Contoh

Berikut adalah contoh kode untuk menanyakan jumlah total baris dalam tabel:

  • Tablestore SDK untuk Python V5.2.1 atau yang lebih baru

    Secara default, jika Anda menggunakan Tablestore SDK untuk Python V5.2.1 atau yang lebih baru untuk melakukan kueri match all, objek SearchResponse akan dikembalikan. Berikut adalah permintaan contoh:

    query=MatchAllQuery()
    all_rows=[]
    next_token=None
    first_page=True
    
    while first_page or next_token:
        search_response=client.search(table_name, index_name,
            SearchQuery(query,next_token=next_token,limit=100,get_total_count=True),
            columns_to_get=ColumnsToGet(['k','t','g','ka','la'],ColumnReturnType.SPECIFIED))
        all_rows.extend(search_response.rows)
        first_page=False
    for row in all_rows:
        print(row)
    
    print('Total baris:', len(all_rows))
    

    Anda dapat menggunakan permintaan contoh berikut untuk mengembalikan hasil tipe Tuple:

    query=MatchAllQuery()
    all_rows=[]
    next_token=None
    first_page=True
    
    while first_page or next_token:
        rows, next_token, total_count, is_all_succeed, agg_results, group_by_results =client.search(table_name, index_name,
            SearchQuery(query,next_token=next_token,limit=100,get_total_count=True),
            columns_to_get=ColumnsToGet(['k','t','g','ka','la'],ColumnReturnType.SPECIFIED)).v1_response()
        all_rows.extend(rows)
        first_page=False
    for row in all_rows:
        print(row)
    
    print('Total baris:', len(all_rows))
    
  • Tablestore SDK untuk Python versi sebelum V5.2.1

    Jika Anda menggunakan versi Tablestore SDK untuk Python yang lebih lama dari V5.2.1 untuk melakukan kueri match all, hasil tipe Tuple akan dikembalikan secara default. Berikut adalah permintaan contoh:

    query=MatchAllQuery()
    all_rows=[]
    next_token=None
    first_page=True
    while first_page or next_token:
        rows, next_token, total_count, is_all_succeed = client.search(table_name, index_name,
            SearchQuery(query, next_token=next_token, limit=100, get_total_count=True),
            columns_to_get=ColumnsToGet(['k', 't', 'g', 'ka', 'la'], ColumnReturnType.SPECIFIED))
        all_rows.extend(rows)
        first_page=False
    for row in all_rows:
        print(row)
    
    print('Total baris:', len(all_rows))