Exists query, juga dikenal sebagai kueri NULL atau kueri nilai NULL, digunakan pada data sparse untuk menentukan apakah suatu kolom dalam baris tertentu ada. Misalnya, Anda dapat mengkueri baris-baris di mana nilai kolom address tidak kosong.
-
Jika ingin melakukan exists query pada kolom Nested, gunakan nested query.
-
Untuk memeriksa apakah suatu kolom berisi nilai kosong, gunakan ExistsQuery bersama dengan mustNotQueries dari BoolQuery.
-
Sistem menganggap suatu kolom tidak ada jika salah satu kondisi berikut terpenuhi. Dalam contoh ini, kolom city digunakan.
-
Tipe kolom city dalam search index adalah tipe dasar seperti keyword. Jika suatu baris tidak memiliki kolom city di tabel data, search index menganggap kolom city tidak ada.
-
Tipe kolom city dalam search index adalah tipe dasar seperti keyword. Jika suatu baris memiliki nilai kolom city berupa array kosong di tabel data ("city" = "[]"), search index menganggap kolom city tidak ada.
-
Operasi API
Anda dapat memanggil operasi Search atau ParallelScan dan mengatur jenis kueri ke ExistsQuery untuk melakukan exists query.
Parameter
|
Parameter |
Deskripsi |
|
fieldName |
Nama kolom yang ingin Anda kueri. |
|
query |
Jenis kueri. Atur parameter ini ke ExistsQuery. |
|
getTotalCount |
Menentukan apakah jumlah total baris yang memenuhi kondisi kueri dikembalikan. Nilai default parameter ini adalah false, yang berarti jumlah total baris yang memenuhi kondisi kueri tidak dikembalikan. Jika Anda mengatur parameter ini ke true, performa kueri akan menurun. |
|
tableName |
Nama tabel data. |
|
indexName |
Nama search index. |
|
columnsToGet |
Menentukan apakah semua kolom dari setiap baris yang memenuhi kondisi kueri dikembalikan. Anda dapat mengonfigurasi field returnAll dan columns untuk parameter ini. Nilai default field returnAll adalah false, yang berarti tidak semua kolom dikembalikan. Dalam hal ini, Anda dapat menggunakan field columns untuk menentukan kolom yang ingin dikembalikan. Jika Anda tidak menentukan kolom yang ingin dikembalikan, hanya kolom kunci primer yang dikembalikan. Jika Anda mengatur field returnAll ke true, semua kolom dikembalikan. |
Metode
Anda dapat melakukan exists query melalui Konsol Tablestore, CLI Tablestore, atau SDK Tablestore. Sebelum melakukannya, pastikan persiapan berikut telah dilakukan:
Gunakan Akun Alibaba Cloud atau RAM user dengan izin yang diperlukan untuk operasi Table Store. Untuk memberikan izin kepada RAM user, lihat Berikan izin kepada RAM user menggunakan kebijakan RAM.
Jika menggunakan SDK atau tool command-line, buat AccessKey untuk Akun Alibaba Cloud atau RAM user Anda jika belum memilikinya.
Anda telah membuat tabel data.
Search Index telah dibuat untuk tabel data tersebut.
Jika menggunakan SDK, inisialisasi Tablestore Client.
Jika menggunakan tool command-line, unduh dan jalankan tool tersebut, lalu konfigurasikan koneksi ke instans Anda dan pilih tabel target. Untuk informasi selengkapnya, lihat Unduh tool command-line, Jalankan tool dan konfigurasikan informasi koneksi, dan Operasi tabel data.
Penagihan
Mengkueri data menggunakan Search Index mengonsumsi throughput baca. Untuk informasi selengkapnya, lihat Metering dan penagihan Search Index.
FAQ
Referensi
Search Index mendukung berbagai jenis kueri untuk kueri data multidimensi, termasuk term query, terms query, match all query, match query, phrase match query, range query, prefix query, suffix query, wildcard query, token-based wildcard query, boolean query, geo query, nested query, vector search, dan exists query.
Saat mengkueri data, Anda dapat mengurutkan dan melakukan paginasi set hasil atau melakukan collapsing (deduplikasi).
Untuk analisis data, seperti mencari nilai maksimum atau minimum, menghitung jumlah, atau menghitung jumlah baris, Anda dapat menggunakan fitur agregasi statistik atau kueri SQL.
Untuk mengekspor data secara cepat tanpa memperhatikan urutan set hasil, Anda dapat menggunakan fitur Parallel Scan.