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

मोंगोडब एकत्रीकरण के साथ स्ट्रिंग की सरणी कैसे लौटाएं?

.aggregate() विधि हमेशा Objects लौटाती है कोई फर्क नहीं पड़ता कि आप क्या करते हैं और वह बदल नहीं सकता।

अपने उद्देश्य के लिए आप शायद .distinct() . का उपयोग करना बेहतर समझते हैं इसके बजाय, जो केवल विशिष्ट मानों की एक सरणी लौटाता है:

db.users.distinct("emails.address");

वास्तव में आपका वांछित आउटपुट कौन सा है:

["[email protected]","[email protected]","[email protected]"]

अगर आप वाकई .aggregate() . का इस्तेमाल करना चाहते हैं तो पोस्ट प्रोसेसिंग में अभिव्यक्ति के "बाहर" होने के लिए केवल मूल्यों के लिए परिवर्तन की आवश्यकता होती है। और आपको $unwind . का भी उपयोग करना चाहिए इस तरह की सरणियों से निपटने के दौरान।

आप इसे JavaScript .map() . के साथ कर सकते हैं उदाहरण के लिए:

db.users.aggregate([
    { "$unwind": "$emails" },
    { "$group": { "_id": "$emails.address" } }
]).map(function(el) { return el._id })

जो समान आउटपुट देता है, लेकिन .map() सर्वर के बजाय ट्रांसफ़ॉर्मेशन क्लाइंट साइड करता है।



  1. Redis
  2.   
  3. MongoDB
  4.   
  5. Memcached
  6.   
  7. HBase
  8.   
  9. CouchDB
  1. मोंगोडब एकत्रीकरण पाइपलाइन समूह पुश को कैसे सीमित करें

  2. CentOS 7 . पर MongoDB स्थापित करना

  3. MongoDB पर बिल्डिंग इंडेक्स के खतरे

  4. MongoDB $gte एकत्रीकरण पाइपलाइन ऑपरेटर

  5. यूनिट परीक्षण के लिए मॉक मोंगोडीबी सर्वर का प्रयोग करें