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

विदेशी संग्रह को देखें और छाँटें

आपको $unwind कसरत सरणी क्योंकि इसमें पहले से ही _id . की सरणी है s और उपयोग करें $replaceRoot करने के बजाय $project

Users.aggregate([
  { "$match": { "_id" : ObjectId("whateverTheUserIdIs") }}, 
  { "$lookup": {
    "from" : "workouts", 
    "localField" : "workouts", 
    "foreignField" : "_id", 
    "as" : "workoutDocumentsArray"
  }},
  { "$unwind": "$workoutDocumentsArray" },
  { "$replaceRoot": { "newRoot": "$workoutDocumentsArray" }}
  { "$sort" : { "date" : -1 }}
])

या यहां तक ​​कि नए के साथ भी $लुकअप वाक्य रचना

Users.aggregate([
  { "$match" : { "_id": ObjectId("whateverTheUserIdIs") }}, 
  { "$lookup" : {
    "from" : "workouts", 
    "let": { "workouts": "$workouts" },
    "pipeline": [
      { "$match": { "$expr": { "$in": ["$_id", "$$workouts"] }}},
      { "$sort" : { "date" : -1 }}
    ]
    "as" : "workoutDocumentsArray"
  }},
  { "$unwind": "$workoutDocumentsArray" },
  { "$replaceRoot": { "newRoot": "$workoutDocumentsArray" }}
])



  1. Redis
  2.   
  3. MongoDB
  4.   
  5. Memcached
  6.   
  7. HBase
  8.   
  9. CouchDB
  1. मैं Sails.js और Waterline का उपयोग करके MongoDB उप-दस्तावेज़ के अंदर एक विशिष्ट कुंजी को कैसे अपडेट करूं?

  2. MongoDB में अधिकतम कितनी शार्क हो सकती हैं?

  3. MongoDB:बिना शर्त अपडेट?

  4. रेल:डेटाबेस में एन्क्रिप्टेड डेटा संग्रहीत करना

  5. नेवला के साथ mongo docker छवि से कनेक्ट नहीं हो सकता