Anda dapat menjalankan kueri awalan untuk menanyakan data yang awalannya sesuai dengan awalan yang ditentukan. Jika kolom yang digunakan untuk mencocokkan kondisi kueri bertipe TEXT, nilai kolom tersebut akan ditokenisasi. Suatu baris memenuhi kondisi kueri jika nilai yang telah ditokenisasi dari kolom yang ditentukan mengandung setidaknya satu token yang diawali dengan awalan yang ditentukan.
Prasyarat
-
Instans OTSClient telah diinisialisasi. Untuk informasi selengkapnya, lihat Inisialisasi instans OTSClient.
-
Tabel data telah dibuat dan data telah ditulis ke tabel tersebut. Untuk informasi selengkapnya, lihat Buat tabel data dan Tulis data.
-
Indeks pencarian telah dibuat untuk tabel data tersebut. Untuk informasi selengkapnya, lihat Buat indeks pencarian.
Parameter
|
Parameter |
Deskripsi |
|
FieldName |
Nama kolom yang ingin Anda tanyakan. |
|
Prefix |
Awalan yang digunakan untuk mencocokkan nilai kolom saat menjalankan kueri awalan. Jika kolom yang digunakan untuk mencocokkan kondisi kueri bertipe TEXT, nilai kolom tersebut akan ditokenisasi. Suatu baris memenuhi kondisi kueri jika nilai yang telah ditokenisasi dari kolom yang ditentukan mengandung setidaknya satu term yang mengandung awalan yang ditentukan. |
|
GetTotalCount |
Menentukan apakah jumlah total baris yang memenuhi kondisi kueri dikembalikan atau tidak. Nilai default: false, yang berarti jumlah total baris yang memenuhi kondisi kueri tidak dikembalikan. Jika Anda mengatur parameter ini ke true, performa kueri akan menurun. |
|
Query |
Jenis kueri. Atur parameter ini ke PrefixQuery. |
|
TableName |
Nama tabel data. |
|
IndexName |
Nama indeks pencarian. |
|
ColumnsToGet |
Menentukan apakah semua kolom dalam baris yang memenuhi kondisi kueri dikembalikan. Anda dapat menentukan parameter ReturnAll, Columns, dan ReturnAllFromIndex. Secara default,
Atur |
Contoh
Kode contoh berikut menunjukkan cara menanyakan baris-baris di mana nilai kolom Keyword_type_col mengandung awalan "Search" dalam suatu tabel.
/// <summary>
/// Tanyakan baris-baris di mana nilai kolom Keyword_type_col mengandung awalan "Search" dalam suatu tabel.
/// </summary>
/// <param name="otsClient"></param>
public static void PrefixQuery(OTSClient otsClient)
{
var searchQuery = new SearchQuery();
// Atur jenis kueri ke PrefixQuery, kolom yang ingin dicocokkan ke Keyword_type_col, dan awalan ke "Search".
searchQuery.Query = new PrefixQuery("Keyword_type_col", "Search");
// Kembalikan jumlah total baris yang memenuhi kondisi kueri.
searchQuery.GetTotalCount = true;
var request = new SearchRequest(TableName, IndexName, searchQuery);
// Anda dapat menentukan parameter ColumnsToGet untuk mengembalikan kolom yang Anda tentukan, semua kolom dalam baris yang memenuhi kondisi kueri, atau semua kolom dalam indeks pencarian. Jika Anda tidak menentukan parameter ini, hanya kolom kunci primer yang dikembalikan.
request.ColumnsToGet = new ColumnsToGet()
{
// Kembalikan semua kolom dalam indeks pencarian.
ReturnAllFromIndex = true
// Kembalikan kolom yang Anda tentukan.
//Columns = new List<string>() { Long_type_col, Text_type_col, Keyword_type_col }
// Kembalikan semua kolom dalam baris yang memenuhi kondisi kueri.
//ReturnAll = true
};
var response = otsClient.Search(request);
Console.WriteLine("Total Count:" + response.TotalCount); // Tampilkan jumlah total baris yang memenuhi kondisi kueri, bukan jumlah baris yang dikembalikan.
}
FAQ
Referensi
Saat menggunakan indeks pencarian untuk menanyakan data, Anda dapat menggunakan metode kueri berikut: kueri tepat, kueri istilah, Pencocokan semua kueri, kueri cocok, permintaan pencocokan frasa, kueri awalan, kueri rentang, kueri wildcard, Boolean query, kueri geografis, kueri bersarang, dan exists query. Anda dapat menggunakan berbagai metode kueri ini untuk menanyakan data dari beberapa dimensi sesuai kebutuhan bisnis Anda.
Anda dapat mengurutkan atau menerapkan paginasi pada baris-baris yang memenuhi kondisi kueri dengan menggunakan fitur pengurutan dan paginasi. Untuk informasi selengkapnya, lihat Pengurutan dan paginasi.
Anda dapat menggunakan fitur collapse (distinct) untuk menciutkan set hasil berdasarkan kolom tertentu sehingga data dari tipe yang ditentukan hanya muncul sekali dalam hasil kueri. Untuk informasi selengkapnya, lihat Collapse (distinct).
Jika Anda ingin menganalisis data dalam tabel data, Anda dapat menggunakan fitur agregasi dari operasi Search atau mengeksekusi pernyataan SQL. Misalnya, Anda dapat memperoleh nilai minimum dan maksimum, jumlah total, serta jumlah baris. Untuk informasi selengkapnya, lihat Agregasi dan Kueri SQL.
Jika Anda ingin memperoleh semua baris yang memenuhi kondisi kueri tanpa perlu mengurutkannya, Anda dapat memanggil operasi ParallelScan dan ComputeSplits untuk menggunakan fitur pemindaian paralel. Untuk informasi selengkapnya, lihat Pemindaian paralel.