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

$ मानचित्र mongodb में अनुक्रमणिका के साथ $ concat फ़ील्ड?

जबकि मैं निश्चित रूप से आपको मोंगोडीबी के विपरीत क्लाइंट साइड पर ऐसा करने की सलाह दूंगा, यहां बताया गया है कि आप जो चाहते हैं उसे कैसे प्राप्त कर सकते हैं - सुंदर क्रूर बल लेकिन काम कर रहा है:

db.collection.aggregate([
    // you should add a $sort stage here to make sure you get the right indexes
{
    $group: {
        _id: null, // group all documents into the same bucket
        docs: { $push: "$$ROOT" } // just to create an array of all documents
    }
}, {
    $project: {
        docs: { // transform the "docs" field
            $map: { // into something
                input: { $range: [ 0, { $size: "$docs" } ] }, // an array from 0 to n - 1 where n is the number of documents
                as: "this", // which shall be accessible using "$$this"
                in: {
                    $mergeObjects: [ // we join two documents
                        { $arrayElemAt: [ "$docs", "$$this" ] }, // one is the nth document in our "docs" array
                        { "index": { $concat: [ 'INV-00', { $substr: [ { $add: [ "$$this", 1 ] }, 0, -1 ] } ] } } // and the second document is the one with our "index" field
                    ]
                }
            }
        }
    }
}, {
    $unwind: "$docs" // flatten the result structure
}, {
    $replaceRoot: {
        newRoot: "$docs" // restore the original document structure
    }
}])



  1. Redis
  2.   
  3. MongoDB
  4.   
  5. Memcached
  6.   
  7. HBase
  8.   
  9. CouchDB
  1. एकल क्वेरी में मोंगो डीबी से नवीनतम दस्तावेज़ निकाला जा रहा है

  2. MongoCollection में खोजें<दस्तावेज़>

  3. मोंगोडब अद्वितीय, विरल, यौगिक अनुक्रमित से निपटना

  4. Mongo में सरणी में वस्तुओं को कैसे अपडेट करें

  5. MongoEngine:गतिशील दस्तावेज़ में फ़ील्ड जोड़ना