全部产品
Search
文档中心

Tablestore:Lakukan kueri wildcard

更新时间:Jul 06, 2025

Saat melakukan kueri wildcard, Anda dapat menggunakan karakter asterisk (*) dan tanda tanya (?) dalam kueri untuk mencari data. Asterisk (*) cocok dengan string dengan panjang berapa pun di awal, tengah, atau akhir istilah pencarian. Tanda tanya (?) cocok dengan satu karakter pada posisi tertentu. String yang cocok dapat dimulai dengan asterisk (*) atau tanda tanya (?). Sebagai contoh, jika Anda mencari string "table*e", maka "tablestore" akan cocok.

Catatan

Untuk menggunakan operator NOT LIKE, gunakan WildcardQuery bersama dengan mustNotQueries dari BoolQuery.

Prasyarat

Parameter

Parameter

Deskripsi

Query

Tipe kueri. Atur parameter ini ke WildcardQuery.

FieldName

Nama kolom yang ingin Anda kueri.

Value

String yang mengandung karakter wildcard. String tidak boleh melebihi 32 karakter.

TableName

Nama tabel data.

IndexName

Nama indeks pencarian.

GetTotalCount

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

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

ColumnsToGet

Menentukan apakah akan mengembalikan semua kolom di baris yang memenuhi kondisi kueri. Anda dapat menentukan parameter ReturnAll, Columns, dan ReturnAllFromIndex.

Nilai default ReturnAll adalah false, yang menentukan bahwa tidak semua kolom dikembalikan. Anda dapat menggunakan salah satu metode berikut untuk menentukan kolom yang ingin Anda kembalikan. Jika Anda tidak menggunakan metode berikut untuk menentukan kolom yang ingin Anda kembalikan, hanya kolom kunci utama yang dikembalikan.

  • Konfigurasikan Columns untuk menentukan kolom yang ingin Anda kembalikan.

  • Atur ReturnAllFromIndex ke true untuk mengembalikan semua kolom dari indeks pencarian.

Jika Anda mengatur ReturnAll ke true, semua kolom dikembalikan.

Contoh

Berikut adalah kode sampel yang menunjukkan cara mengkueri baris di mana nilai kolom Keyword_type_col cocok dengan "Search*" dalam sebuah tabel.

/// <summary>
/// Query the rows in which the value of the Keyword_type_col column matches "Search*" in a table. 
/// </summary>
/// <param name="otsClient"></param>
public static void WildcardQuery(OTSClient otsClient)
{
    var searchQuery = new SearchQuery();
    // Set the query type to WildcardQuery and specify a string that contains one or more wildcard characters to perform a wildcard query. 
    searchQuery.Query = new WildcardQuery(Keyword_type_col, "*Search*");
    // Return the total number of rows that meet the query conditions. 
    searchQuery.GetTotalCount = true;
    var request = new SearchRequest(TableName, IndexName, searchQuery);
    // You can specify the ColumnsToGet parameter to return the columns that you specify, all columns in the rows that meet the query conditions, or all columns in the search index. If you do not specify this parameter, only the primary key columns are returned. 
    request.ColumnsToGet = new ColumnsToGet()
    {
        // Return all columns in the search index. 
        ReturnAllFromIndex = true
        // Return the columns that you specify. 
        //Columns = new List<string>() { Long_type_col, Text_type_col, Keyword_type_col }
        // Return all columns in the rows that meet the query conditions. 
        //ReturnAll = true
    };

    var response = otsClient.Search(request);

    Console.WriteLine("Total Count:" + response.TotalCount); // Display the total number of rows that meet the query conditions instead of the number of returned rows. 
}

Pertanyaan Umum

Referensi

  • Saat menggunakan indeks pencarian untuk mengkueri data, Anda dapat menggunakan metode kueri berikut: kueri tepat, kueri terms, kueri match all, kueri match, kueri match phrase, kueri prefix, kueri range, kueri wildcard, kueri Boolean, kueri geo, kueri nested, dan kueri exists. Anda dapat menggunakan metode kueri ini untuk mengkueri data dari beberapa dimensi sesuai kebutuhan bisnis Anda.

    Anda dapat mengurutkan atau membagi halaman baris yang memenuhi kondisi kueri menggunakan fitur Pengurutan dan paging. Untuk informasi lebih lanjut, lihat Pengurutan dan paging.

    Anda dapat menggunakan fitur collapse (distinct) untuk merangkum set hasil berdasarkan kolom tertentu. Dengan cara ini, data dari tipe tertentu muncul hanya sekali dalam hasil kueri. Untuk informasi lebih lanjut, lihat Collapse (distinct).

  • Jika ingin menganalisis data dalam tabel data, Anda dapat menggunakan fitur agregasi operasi Search atau menjalankan pernyataan SQL. Sebagai contoh, Anda dapat memperoleh nilai minimum dan maksimum, jumlah, serta total jumlah baris. Untuk informasi lebih lanjut, lihat Agregasi dan Kueri SQL.

  • Jika ingin mendapatkan semua baris yang memenuhi kondisi kueri tanpa perlu mengurutkan baris, Anda dapat memanggil operasi ParallelScan dan ComputeSplits untuk menggunakan fitur pemindaian paralel. Untuk informasi lebih lanjut, lihat Pemindaian paralel.