全部产品
Search
文档中心

OpenSearch:klausul kvpairs

更新时间:Jun 26, 2025

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_id

Gunakan 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).