Gunakan term query untuk menemukan baris di mana suatu bidang secara tepat sesuai dengan kata kunci. Kata kunci tersebut tidak ditokenisasi. Untuk bidang TEXT, Tablestore menokenisasi nilai bidang tersebut dan mencocokkan kata kunci terhadap setiap token—baris memenuhi syarat jika salah satu tokennya merupakan kecocokan tepat.
Prasyarat
-
Instans OTSClient telah diinisialisasi. Untuk informasi selengkapnya, lihat Initialize an OTSClient instance.
-
Tabel data telah dibuat dan data telah ditulis ke dalamnya. Untuk informasi selengkapnya, lihat Buat tabel data dan Tulis data.
-
Indeks pencarian telah dibuat untuk tabel data tersebut. Untuk informasi selengkapnya, lihat Create search indexes.
Parameter
|
Parameter |
Deskripsi |
|
FieldName |
Nama bidang yang akan dicocokkan. |
|
Term |
Kata kunci yang akan dicocokkan terhadap nilai bidang. Kata kunci ini tidak ditokenisasi — ia dicocokkan apa adanya terhadap nilai bidang penuh atau, untuk bidang TEXT, terhadap setiap token. Untuk bidang TEXT, Tablestore menokenisasi nilai bidang tersebut dan memeriksa apakah ada token yang secara tepat cocok dengan kata kunci. Misalnya, jika bidang TEXT berisi "tablestore is cool", nilainya ditokenisasi menjadi "tablestore", "is", dan "cool". Menentukan salah satu dari token tersebut sebagai kata kunci akan mengembalikan baris tersebut. |
|
GetTotalCount |
Menentukan apakah jumlah total baris yang cocok dikembalikan. Nilai default-nya adalah |
|
Query |
Jenis kueri. Atur ke |
|
TableName |
Nama tabel data. |
|
IndexName |
Nama indeks pencarian. |
|
ColumnsToGet |
Menentukan kolom mana saja yang dikembalikan untuk baris yang cocok. Konfigurasikan Secara default,
Atur |
Contoh
Contoh berikut melakukan kueri terhadap baris di mana bidang Keyword_type_col secara tepat sesuai dengan SearchIndex.
/// <summary>
/// Kueri baris di mana Keyword_type_col secara tepat sesuai dengan "SearchIndex".
/// </summary>
/// <param name="otsClient"></param>
public static void TermQuery(OTSClient otsClient)
{
var searchQuery = new SearchQuery();
// Mengembalikan jumlah total baris yang cocok.
searchQuery.GetTotalCount = true;
// Mencocokkan baris di mana Keyword_type_col sama dengan "SearchIndex".
searchQuery.Query = new TermQuery("Keyword_type_col", new ColumnValue("SearchIndex"));
var request = new SearchRequest(TableName, IndexName, searchQuery);
// Mengembalikan semua kolom dari indeks pencarian.
// Untuk mengembalikan kolom tertentu: Columns = new List<string>() { Long_type_col, Text_type_col, Keyword_type_col }
// Untuk mengembalikan semua kolom dari tabel data: ReturnAll = true
request.ColumnsToGet = new ColumnsToGet()
{
ReturnAllFromIndex = true
};
var response = otsClient.Search(request);
// Periksa NextToken untuk hasil yang dipaginasi.
}
FAQ
Referensi
Saat menggunakan indeks pencarian untuk mengkueri data, Anda dapat menggunakan metode kueri berikut: term query, terms query, match all query, match query, match phrase query, prefix query, range query, wildcard query, Boolean query, geo query, nested query, dan exists query. Metode-metode kueri ini memungkinkan Anda mengkueri data dari berbagai dimensi sesuai kebutuhan bisnis.
Anda dapat mengurutkan atau memaginasi baris yang memenuhi kondisi kueri dengan menggunakan fitur pengurutan dan paginasi. Untuk informasi selengkapnya, lihat Sorting and paging.
Anda juga dapat menggunakan fitur collapse (distinct) untuk menciutkan set hasil berdasarkan kolom tertentu sehingga data jenis tertentu hanya muncul sekali dalam hasil kueri. Untuk informasi selengkapnya, lihat Collapse (distinct).
Jika ingin menganalisis data dalam tabel data, Anda dapat menggunakan fitur agregasi dari operasi Search atau mengeksekusi pernyataan SQL, misalnya untuk memperoleh nilai minimum dan maksimum, jumlah total, serta jumlah baris. Untuk informasi selengkapnya, lihat Aggregation dan SQL query.
Jika 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 Parallel scan.