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

फ़ील्डपाथ फ़ील्ड नामों में '.' नहीं हो सकता है $group . में

चूंकि आपके पास एकल समूह फ़ील्ड है, इसलिए सबसे अच्छा तरीका है कि आप केवल _id . का उपयोग करें उस फ़ील्ड पर समूह कुंजी और फिर एक और $project बनाएं पाइपलाइन जो _id . को नया आकार देगी पिछली पाइपलाइन से वांछित उप-दस्तावेज़ में कुंजी जो आप चाहते हैं। उदाहरण के लिए

db.analytics.aggregate([
    {
        "$match": {
            "eventArgs.type": 'touchstart', 
            "eventType": 'mousedown', 
            "creationDateTime": { "$gte": ISODate("2017-02-24T000:00:00.000Z") } 
        }
    },
    {
        "$group": {
            "_id": "$eventArgs.elementId",
            "count": { "$sum": 1 }
        }
    },
    {
        "$project": {
            "eventsArgs.elementId": "$_id",
            "count": 1, "_id": 0
        }
    }
]);

निम्नलिखित को भी काम करना चाहिए:

db.analytics.aggregate([
    {
        "$match": {
            "eventArgs.type": 'touchstart', 
            "eventType": 'mousedown', 
            "creationDateTime": { "$gte": ISODate("2017-02-24T000:00:00.000Z") } 
        }
    },
    {
        "$group": {
            "_id": {
               "eventArgs": {
                   "elementId": "$eventArgs.elementId"
               }
            },
            "count": { "$sum": 1 }
        }
    }
]);



  1. Redis
  2.   
  3. MongoDB
  4.   
  5. Memcached
  6.   
  7. HBase
  8.   
  9. CouchDB
  1. आपके अनुप्रयोगों के लिए पारदर्शी डेटाबेस विफलता

  2. मोंगोएक्सपोर्ट करते समय बहुत अधिक स्थितीय विकल्पों का क्या अर्थ है?

  3. कैसे एक विशेष क्षेत्र नेवला में एक संग्रह से बाहर करने के लिए?

  4. AWS पर MongoDB:अपने MongoDB सर्वर के लिए सही EC2 इंस्टेंस प्रकार कैसे चुनें?

  5. MongoDB में एक बहु-भाषा टेक्स्ट इंडेक्स बनाएं