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

सरणी की लंबाई से मानगो क्रम

मुझे लगा कि आप $size . का उपयोग करने में सक्षम हो सकते हैं , लेकिन यह केवल एक निश्चित आकार के सरणियों को खोजने के लिए है, क्रम देने के लिए नहीं।

मोंगो प्रलेखन से:http://www.mongodb.org/display/DOCS/Advanced+Queries#AdvancedQueries-%24size

<ब्लॉकक्वॉट>

आप आकार की श्रेणी खोजने के लिए $size का उपयोग नहीं कर सकते (उदाहरण के लिए:1 से अधिक तत्व वाले सरणियाँ)। यदि आपको किसी श्रेणी के लिए क्वेरी करने की आवश्यकता है, तो एक अतिरिक्त आकार फ़ील्ड बनाएं जिसे आप तत्व जोड़ते समय बढ़ाते हैं। किसी क्वेरी के $size हिस्से के लिए इंडेक्स का उपयोग नहीं किया जा सकता है, हालांकि अगर अन्य क्वेरी एक्सप्रेशन शामिल हैं तो इंडेक्स का उपयोग क्वेरी एक्सप्रेशन के उस हिस्से पर मिलान खोजने के लिए किया जा सकता है।

ऐसा लगता है कि आप शायद इसे नए एकत्रीकरण ढांचे के साथ काफी आसानी से कर सकते हैं, संपादित करें: जो अभी तक नहीं आया है।http://www.mongodb.org/display/DOCS/Aggregation+Framework

अपडेट करें अब एग्रीगेशन फ्रेमवर्क समाप्त हो गया है...

> db.test.aggregate([
  {$unwind: "$answers"}, 
  {$group: {_id:"$_id", answers: {$push:"$answers"}, size: {$sum:1}}}, 
  {$sort:{size:1}}]);
{
"result" : [
    {
        "_id" : ObjectId("5053b4547d820880c3469365"),
        "answers" : [
            {
                "content" : "answer1"
            },
            {
                "content" : "2nd answer"
            }
        ],
        "size" : 2
    },
    {
        "_id" : ObjectId("5053b46d7d820880c3469366"),
        "answers" : [
            {
                "content" : "answer1"
            },
            {
                "content" : "2nd answer"
            },
            {
                "content" : "The third answer"
            }
        ],
        "size" : 3
    }
  ],
  "ok" : 1
}


  1. Redis
  2.   
  3. MongoDB
  4.   
  5. Memcached
  6.   
  7. HBase
  8.   
  9. CouchDB
  1. Mongodb में किसी फ़ील्ड में सबस्ट्रिंग कैसे खोजें?

  2. MongoDB के साथ उप-दस्तावेज़ में सरणी को कैसे फ़िल्टर करें?

  3. मोंगोड कांटा शुरू करना, त्रुटि:बाल प्रक्रिया विफल, त्रुटि संख्या 1 से बाहर निकली

  4. मोंगोडब 3.x ड्राइवर एंड्रॉइड संगतता

  5. node.js और एक्सप्रेस - वैश्विक मॉड्यूल और अनुप्रयोग संरचना के लिए सर्वोत्तम अभ्यास