3.6 अपडेट:
$match
का उपयोग करें $expr
. के साथ . $expr
$match
. के अंदर एकत्रीकरण अभिव्यक्तियों के उपयोग की अनुमति देता है मंच।
db.collection.aggregate([
{"$match":{
"$expr":{
"$eq":[
{"$size":{"$setIntersection":["$FirstArray.Name","$SecondArray.Name"]}},
0
]
}
}},
{"$project":{"_id":1}}
])
पुराना संस्करण:
आप कोशिश कर सकते हैं $redact
$setIntersection
. के साथ आपकी क्वेरी के लिए।
$setIntersection
FirstArray
की तुलना करने के लिए रों Name
s SecondArray
. के साथ रों Name
s और सामान्य नाम दस्तावेज़ों की वापसी सरणी के बाद $size
और $redact
और परिणाम की तुलना 0
. से करें दस्तावेज़ को रखने और हटाने के लिए।
db.collection.aggregate(
[{
$redact: {
$cond: {
if: {
$eq: [{
$size: {
$setIntersection: ["$FirstArray.Name", "$SecondArray.Name"]
}
}, 0]
},
then: "$$KEEP",
else: "$$PRUNE"
}
}
}, {
$project: {
_id: 1
}
}]
)