Terjemahan disediakan oleh mesin penerjemah. Jika konten terjemahan yang diberikan bertentangan dengan versi bahasa Inggris aslinya, utamakan versi bahasa Inggris.
$elemMatch
$elemMatchOperator di Amazon DocumentDB digunakan untuk menanyakan bidang array dan mengembalikan dokumen di mana setidaknya satu elemen dalam array cocok dengan kriteria yang ditentukan. Operator ini sangat berguna ketika Anda memiliki struktur data yang kompleks dengan array bersarang atau dokumen yang disematkan.
Perencana versi 2.0 menambahkan dukungan indeks untuk$elemMatch.
Parameter
-
field: Bidang array untuk query. -
query: Kriteria untuk mencocokkan dengan elemen array.
Menggunakan $elemMatch dalam $all ekspresi
Lihat Menggunakan $elemMatch dalam $all ekspresi batasan mengenai penggunaan $elemMatch operator dalam sebuah $all ekspresi.
Contoh (MongoDB Shell)
Contoh berikut menunjukkan bagaimana menggunakan $elemMatch operator untuk menemukan dokumen di mana parts array memiliki setidaknya satu elemen yang cocok dengan kriteria yang ditentukan.
Buat dokumen sampel
db.col.insertMany([ { _id: 1, parts: [{ part: "xyz", qty: 10 }, { part: "abc", qty: 20 }] }, { _id: 2, parts: [{ part: "xyz", qty: 5 }, { part: "abc", qty: 10 }] }, { _id: 3, parts: [{ part: "xyz", qty: 15 }, { part: "abc", qty: 100 }] }, { _id: 4, parts: [{ part: "abc", qty: 150 }] } ]);
Contoh kueri
db.col.find({ parts: { "$elemMatch": { part: "xyz", qty: { $lt: 11 } } } })
Keluaran
{ "_id" : 1, "parts" : [ { "part" : "xyz", "qty" : 10 }, { "part" : "abc", "qty" : 20 } ] }
{ "_id" : 2, "parts" : [ { "part" : "xyz", "qty" : 5 }, { "part" : "abc", "qty" : 10 } ] }
Contoh kode
Untuk melihat contoh kode untuk menggunakan $elemMatch perintah, pilih tab untuk bahasa yang ingin Anda gunakan: