Anda dapat melakukan kueri awalan untuk menanyakan data yang cocok dengan awalan tertentu. Jika tipe kolom adalah TEXT, Tablestore akan memecah string menjadi token dan menggunakan token tersebut untuk mencocokkan kata kunci. Sebuah baris memenuhi kondisi kueri ketika setidaknya salah satu token dalam baris tersebut cocok dengan awalan yang ditentukan.
Prasyarat
Sebuah instance OTSClient telah diinisialisasi. Untuk informasi lebih lanjut, lihat Inisialisasi Instance OTSClient.
Tabel data dibuat dan data ditulis ke tabel data. Untuk informasi lebih lanjut, lihat Buat Tabel Data dan Tulis Data.
Indeks pencarian telah dibuat untuk tabel data. Untuk informasi lebih lanjut, lihat Buat Indeks Pencarian.
Parameter
Parameter | Deskripsi |
tableName | Nama tabel data. |
indexName | Nama indeks pencarian. |
offset | Posisi dari mana kueri saat ini dimulai. |
limit | Jumlah maksimum baris yang ingin Anda kembalikan dalam kueri saat ini. Untuk hanya menanyakan jumlah baris yang memenuhi kondisi kueri tanpa data spesifik, atur parameter limit ke 0. |
queryType | Tipe kueri. Atur parameter ini ke TableStore.QueryType.PREFIX_QUERY. |
fieldName | Nama kolom yang ingin Anda tanyakan. |
prefix | Awalan yang digunakan untuk mencocokkan nilai kolom saat Anda melakukan kueri awalan. Jika tipe kolom adalah TEXT, Tablestore akan memecah string menjadi token dan menggunakan token tersebut untuk mencocokkan kata kunci. Sebuah baris memenuhi kondisi kueri ketika setidaknya salah satu token dalam baris tersebut cocok dengan awalan yang ditentukan. |
getTotalCount | Menentukan apakah akan mengembalikan jumlah total baris yang memenuhi kondisi kueri. Nilai default dari parameter ini adalah false, yang menentukan bahwa jumlah total baris yang memenuhi kondisi kueri tidak dikembalikan. Jika Anda mengatur parameter ini ke true, performa kueri akan berkurang. |
columnToGet | Menentukan apakah akan mengembalikan semua kolom dari setiap baris yang memenuhi kondisi kueri. Anda dapat mengonfigurasi bidang returnType dan returnNames untuk parameter ini.
|
Contoh
Berikut ini adalah contoh kode sampel tentang cara menanyakan baris di mana awalan nilai kolom Col_Keyword adalah "hang":
/**
* Cari tabel untuk baris di mana nilai Col_Keyword berisi awalan "hang", seperti "hangzhou".
*/
client.search({
tableName: TABLE_NAME,
indexName: INDEX_NAME,
searchQuery: {
offset: 0,
limit: 10, // Untuk hanya menanyakan jumlah baris yang memenuhi kondisi kueri tanpa data spesifik, atur parameter limit ke 0.
query: { // Atur tipe kueri ke TableStore.QueryType.PREFIX_QUERY.
queryType: TableStore.QueryType.PREFIX_QUERY,
query: {
fieldName: "Col_Keyword",
prefix: "hang" // Atur awalan ke "hang" untuk mencocokkan nilai kolom seperti "hangzhou" atau "hangzhoushi".
}
},
getTotalCount: true // Tentukan apakah akan mengembalikan jumlah total baris yang memenuhi kondisi kueri. Nilai default dari parameter ini adalah false, yang menentukan bahwa jumlah total baris yang memenuhi kondisi kueri tidak dikembalikan.
},
columnToGet: { // Tentukan kolom yang ingin Anda kembalikan. Anda dapat mengatur parameter ini ke RETURN_SPECIFIED untuk mengembalikan kolom tertentu, RETURN_ALL untuk mengembalikan semua kolom, RETURN_ALL_FROM_INDEX untuk mengembalikan semua kolom dalam indeks pencarian, atau RETURN_NONE untuk mengembalikan hanya kolom kunci utama.
returnType: TableStore.ColumnReturnType.RETURN_ALL
}
}, function (err, data) {
if (err) {
console.log('error:', err);
return;
}
console.log('success:', JSON.stringify(data, null, 2));
});FAQ
FAQ
Referensi
Berikut ini adalah tipe kueri yang didukung oleh indeks pencarian: kueri tepat, kueri terms, kueri match all, kueri match, kueri match phrase, kueri awalan, kueri rentang, kueri wildcard, kueri Boolean, kueri geo, kueri nested, kueri vektor, dan kueri exists. Anda dapat memilih tipe kueri untuk menanyakan data berdasarkan kebutuhan bisnis Anda.
Jika Anda ingin mengurutkan atau membagi halaman baris yang memenuhi kondisi kueri, Anda dapat menggunakan fitur pengurutan dan paging. Untuk informasi lebih lanjut, lihat Pengurutan dan Paging.
Jika Anda ingin meruntuhkan set hasil berdasarkan kolom tertentu, Anda dapat menggunakan fitur collapse (distinct). Dengan cara ini, data dari tipe yang ditentukan muncul hanya sekali dalam hasil kueri. Untuk informasi lebih lanjut, lihat Collapse (Distinct).
Jika Anda ingin menganalisis data dalam tabel data, seperti mendapatkan nilai ekstrem, jumlah total, dan jumlah total baris, Anda dapat melakukan operasi agregasi atau menjalankan pernyataan SQL. Untuk informasi lebih lanjut, lihat Agregasi dan Kueri SQL.
Jika Anda ingin dengan cepat 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.