Ikhtisar
Anda dapat menggunakan klausul kvpairs untuk menetapkan nilai ke bidang yang dirujuk dalam bagian yang dapat diubah dari ekspresi pengurutan. Dengan cara ini, Anda dapat mengirimkan nilai bidang ke fungsi fitur tertentu melalui klausa kueri.
Sintaksis
Klausul kvpairs memiliki format berikut: key1:nilai1,key2:nilai2...
key1 menunjukkan sebuah bidang dan nilai1 menunjukkan nilai dari bidang tersebut. Pisahkan bidang dan nilai dalam pasangan kunci-nilai dengan titik dua (:).
Anda dapat menentukan beberapa pasangan kunci-nilai sesuai kebutuhan. Pisahkan setiap pasangan kunci-nilai dengan koma (,).
Catatan penggunaan
Klausul kvpairs bersifat opsional.
Contoh
Gunakan klausa kueri berikut untuk mencari dokumen yang mengandung "alibaba". Dokumen yang ditemukan di-aggregasi berdasarkan bidang company_id. Total satu kali ekstraksi dilakukan, di mana satu dokumen diekstraksi. Sisa dokumen setelah ekstraksi dibuang, dan hanya dokumen yang diekstraksi yang dikembalikan.
query=default:'alibaba'&&distinct=dist_key:company_id,dist_count:1,dist_times:1,reserved:false&&kvpairs=duniqfield:company_idGunakan klausa kueri berikut untuk mencari dokumen yang mengandung "alibaba" berdasarkan kondisi kecocokan 13=10:100=1. Dalam hal ini, fungsi tag_match digunakan. Kondisi kecocokan berlaku pada bidang tag bertipe INT_ARRAY. Bidang tag berisi beberapa pasangan atribut. Nilai atribut yang cocok dengan suatu kunci dijumlahkan untuk menghasilkan total. Jika beberapa kunci cocok, total terbesar dipertahankan.
query=default:'alibaba'&&kvpairs=query_key:13=10:100=1 //Ekspresi penyortiran halus adalah tag_match(query_key, tags, sum, max, true, true).