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

लुकअप पाइपलाइन:`$मिलान` स्थानीय क्षेत्र `$in` सरणी जब मूल्य से सरणी है और स्थानीय मूल्य पाया जाना है

क्या आप कृपया इसे आजमा सकते हैं:

db.collection_a.aggregate(
[{ $match: { _id: ObjectId(' ') } },
// other $lookups...
{
    $lookup: {
        as: 'collection_b',
        from: 'collection_b',
        let: { id: { $toString: '$_id' } },
        pipeline: [
            {
                $addFields: {
                    "related": {
                        "$cond": {
                            "if": {
                                "$ne": [{ "$type": "$related" }, "array"]
                            },
                            "then": [],
                            "else": "$related"
                        }
                    }
                }
            },
            {
                $match: {
                    $expr: { $in: ['$$id', '$related'] }
                }
            }
            // sorts, projections, etc...
        ]
    }
}
           // sorts, projections, etc...
]);

जैसा कि यह कहता है $in दूसरे पैरामीटर के रूप में एक सरणी लेता है और एक मान जिसे आप खोज रहे हैं वह पहला पैरामीटर है।




  1. Redis
  2.   
  3. MongoDB
  4.   
  5. Memcached
  6.   
  7. HBase
  8.   
  9. CouchDB
  1. जावा में मोंगोडीबी सूची उपलब्ध डेटाबेस

  2. MongoDB में अनुक्रमणिका के पुनर्निर्माण के लिए क्यों और कब आवश्यक है?

  3. MongoDB $लुकअप मान वापस ऐरे में:

  4. FindOneAndUpdate और अद्यतन का नेवला अंतर

  5. संग्रह में सभी कुंजियों के नाम प्राप्त करें