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

Pilih dokumen di mana semua nilai dalam bidang array ada di array lain

Anda dapat melakukannya menggunakan .aggregate() metode dan $redact operator. Di $cond . Anda ekspresi Anda perlu menggunakan $setIsSubset untuk memeriksa apakah semua elemen dalam larik "produk" ada di "productIds". Ini karena Anda tidak dapat menggunakan $in dalam ekspresi kondisional

var productIds = [139,72,73,1,6];
db.customers.aggregate([ 
    { "$redact": { 
        "$cond": [ 
            { "$setIsSubset": [ "$products", productIds ] },
            "$$KEEP",
            "$$PRUNE" 
        ] 
    }} 
])



  1. Redis
  2.   
  3. MongoDB
  4.   
  5. Memcached
  6.   
  7. HBase
  8.   
  9. CouchDB
  1. tidak dapat memulai server lokal mongodb

  2. MongoDB 4.2 Manajemen &Pemantauan Tanpa Vendor Lockin

  3. String luwak ke ObjectID

  4. Mongodb mengurutkan array dalam

  5. MongoDB tidak diizinkan untuk kueri - kode 13