MongoDB
 sql >> Teknologi Basis Data >  >> NoSQL >> MongoDB

Array Filter MongoDb

Jika Anda hanya memfilter elemen dalam array, meskipun hanya satu elemen yang cocok, seluruh array akan dikembalikan, dan tidak ada yang akan dikembalikan jika tidak ada kecocokan. Oleh karena itu, Anda perlu memisahkan array Anda ke dalam dokumen yang berbeda menggunakan $unwind operator, dan hanya setelah itu, coba filter hasil menggunakan $match .

Kueri berikut mungkin menyelesaikan masalah Anda :

db.collection.aggregate([
  {"$unwind": "$product"},
  {"$match": {"product.name": "FirstWarehouseName1"}} // replace here with the name you want
])

Bekerja mongoplayground

Jika boleh, hanya tip :Anda harus menyimpan setiap produk dalam dokumen yang berbeda, meskipun MongoDB tidak memiliki skema dan memungkinkan kita untuk memiliki hampir semua format dokumen, ingatlah bahwa setiap dokumen harus berisi setara dengan satu baris informasi dalam database relasional biasa. Jika tidak, Anda akan mulai mengalami masalah ini, dan selain itu, masalah kinerja.



  1. Redis
  2.   
  3. MongoDB
  4.   
  5. Memcached
  6.   
  7. HBase
  8.   
  9. CouchDB
  1. Cara menginstal NodeJS dengan MongoDB di Ubuntu

  2. Apakah mongodump mengunci database?

  3. pasport.js - mengautentikasi pengguna dari MongoDB dengan paspor-lokal

  4. cara menggunakan $project return nest array setelah $lookup di mongodb

  5. Seberapa berbahayakah kueri mongo yang diumpankan langsung dari string kueri URL?