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

यदि वह उत्पाद एक प्रकार है तो प्रत्येक उत्पाद के भिन्न मान कैसे लौटाएं?

आपको $unwind . का उपयोग करके इसे हासिल करने में सक्षम होना चाहिए और $group आपके एकत्रीकरण पाइपलाइन में। यह पहले प्रत्येक विशेषता को एक दस्तावेज़ में समतल करता है और उन पर आप विशेषता मान द्वारा समूहित कर सकते हैं।

अंत में, आप $project . का उपयोग कर सकते हैं attributeValue . के लिए वांछित नाम प्राप्त करने के लिए :

db.collection.aggregate([
  {
    $unwind: "$attributeSet"
  },
  {
    $group: {
      _id: "$attributeSet.value",
      data: {
        "$addToSet": {
          productId: "$productId"
        }
      }
    }
  },
  {
    "$project": {
      _id: 0,
      data: 1,
      attributeValue: "$_id"
    }
  }
])

मोंगोप्लेग्राउंड पर यह सरलीकृत उदाहरण देखें:https://mongoplayground.net/p/VASadZnDedc




  1. Redis
  2.   
  3. MongoDB
  4.   
  5. Memcached
  6.   
  7. HBase
  8.   
  9. CouchDB
  1. _id का उपयोग करके खोजें जो एकत्रीकरण के साथ काम नहीं कर रहा है

  2. Linq के माध्यम से MongoDB में BsonExtraElements को कैसे क्वेरी करें

  3. Upsert के साथ अपडेट को सही के रूप में उपयोग करते समय डिफ़ॉल्ट मान सेट नहीं है

  4. क्या WiredTiger में MongoDb दस्तावेज़ पर आंशिक अद्यतन करने से पूर्ण दस्तावेज़ अद्यतन पर कोई लाभ मिलता है?

  5. MongoConnectionException - से कनेक्ट करने में विफल:लोकलहोस्ट:27017