MongoDB
 sql >> डेटाबेस >  >> NoSQL >> MongoDB

खाली होने पर मूल डेटा लौटाते समय उप-दस्तावेज़ सरणी फ़िल्टर करें

आप इस मामले में $match के बजाय $redact का उपयोग कर सकते हैं, इस तरह

db.collectionName.aggregate({
  $redact:{
    $cond:{ 
       if:{$and:[{$not:"$dealerName"},{$not:"$title"},{$eq:["$listed",false]}, 
       then: "$$PRUNE", 
       else: "$$DESCEND" 
    }
  }
})

हमें शीर्ष स्तर के दस्तावेजों को छोड़ने के लिए पहली शर्त, दूसरे स्तर को छोड़ने के लिए दूसरी शर्त और वाहनों की छंटाई करने के लिए तीसरी शर्त की आवश्यकता है। किसी $अनविंड की आवश्यकता नहीं है इस मामले में!

एक और बात:$redact केवल 2.6 में उपलब्ध है




  1. Redis
  2.   
  3. MongoDB
  4.   
  5. Memcached
  6.   
  7. HBase
  8.   
  9. CouchDB
  1. MongoDB में बहु-दस्तावेज़ ACID लेनदेन का अवलोकन और उनका उपयोग कैसे करें

  2. किसी अन्य डॉकटर कंटेनर से मोंगोडब डॉकटर कंटेनर से कनेक्ट करना

  3. MongoDB PHP ड्राइवर और MongoDB संगतता जाँच

  4. मोंगोइड में एम्बेडेड दस्तावेज़ बनाम हैश डेटाटाइप

  5. मोंगो:डॉट नोटेशन के बिना उप-दस्तावेज़ ढूंढें