全部产品
Search
文档中心

Tablestore:Kueri Exists

更新时间:Jul 06, 2025

Kueri exists, juga dikenal sebagai kueri NULL atau kueri nilai NULL, digunakan dalam data yang jarang untuk menentukan apakah kolom dari suatu baris ada. Sebagai contoh, Anda dapat memfilter baris di mana nilai kolom alamat tidak kosong.

Catatan
  • Untuk melakukan kueri exists pada kolom Nested, gunakan kueri nested.

  • Untuk memeriksa apakah kolom berisi nilai kosong, gunakan ExistsQuery bersama dengan mustNotQueries dari BoolQuery.

  • Jika salah satu kondisi berikut terpenuhi, sistem menganggap bahwa kolom tidak ada. Contoh ini menggunakan kolom city.

    • Tipe kolom city di indeks pencarian adalah tipe dasar seperti keyword. Jika sebuah baris tidak memiliki kolom city di tabel data, indeks pencarian menganggap bahwa kolom city tidak ada.

    • Tipe kolom city di indeks pencarian adalah tipe dasar seperti keyword. Jika sebuah baris memiliki nilai kolom city sebagai array kosong ("city" = "[]"), indeks pencarian menganggap bahwa kolom city tidak ada.

Prasyarat

Parameter

Parameter

Deskripsi

fieldName

Nama bidang yang ingin Anda cocokkan.

query

Tipe kueri. Untuk menggunakan kueri exists, atur parameter ini ke TableStore.QueryType.EXISTS_QUERY.

getTotalCount

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

Jika parameter ini diatur ke true, performa kueri akan terpengaruh.

tableName

Nama tabel data.

indexName

Nama indeks pencarian.

columnsToGet

Menentukan apakah akan mengembalikan semua kolom dari setiap baris yang memenuhi kondisi kueri.

  • Jika Anda mengatur returnType ke TableStore.ColumnReturnType.RETURN_SPECIFIED, Anda perlu mengonfigurasi returnNames untuk menentukan kolom yang ingin dikembalikan.

  • Jika Anda mengatur parameter returnType ke TableStore.ColumnReturnType.RETURN_ALL, semua kolom akan dikembalikan.

  • Jika Anda mengatur parameter returnType ke TableStore.ColumnReturnType.RETURN_ALL_FROM_INDEX, semua kolom di indeks pencarian akan dikembalikan. .

  • Jika Anda mengatur parameter returnType ke TableStore.ColumnReturnType.RETURN_NONE, hanya kolom kunci utama yang akan dikembalikan.

Contoh

Berikut adalah kode sampel untuk memfilter baris di mana kolom tertentu tidak kosong:

client.search({
    tableName: TABLE_NAME,
    indexName: INDEX_NAME,
    searchQuery: {
        offset: 0,
        limit: 10, // Untuk memfilter hanya jumlah baris yang memenuhi kondisi kueri tanpa data spesifik, atur parameter limit ke 0. 
        query: {
            queryType: TableStore.QueryType.EXISTS_QUERY,
                        query: {
                                fieldName: "pic_des"
                        },
        },
        getTotalCount: true // Tentukan apakah akan mengembalikan jumlah total baris yang memenuhi kondisi kueri. Nilai default: false. 
    },
    columnToGet: { // Tentukan kolom yang ingin dikembalikan. 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 di indeks pencarian, atau RETURN_NONE untuk mengembalikan hanya kolom kunci utama. 
        returnType: TableStore.ColumnReturnType.RETURN_SPECIFIED,
        returnNames: ["Col_1", "Col_2", "Col_3"]
    }
}, function (err, data) {
    if (err) {
        console.log('error:', err);
        return;
    }
    console.log('success:', JSON.stringify(data, null, 2));
});

FAQ

Referensi