आपको अन्य फ़ील्ड और अपने $match
सरणी आकार के आधार पर दस्तावेज़ों को फ़िल्टर करने के लिए पाइपलाइन को नव-निर्मित फ़ील्ड पर केवल एक क्वेरी करने की आवश्यकता होगी। निम्नलिखित की तरह कुछ काम करना चाहिए:
db.entity.aggregate([
{
"$project": {
"Line": 1,
"LineStart": 1, "SSCEXPEND": 1,
"SSCEXPEND_count": { "$size": "$SSCEXPEND" }
}
},
{
"$match": {
"SSCEXPEND_count": { "$gte": 2 }
}
}
])
नमूना आउटपुट :
/* 0 */
{
"result" : [
{
"_id" : "201503110040020021",
"Line" : "1",
"LineStart" : ISODate("2015-03-11T06:49:35.000Z"),
"SSCEXPEND" : [
{
"Secuence" : 10,
"Title" : 1
},
{
"Secuence" : 183,
"Title" : 613
}
],
"SSCEXPEND_count" : 2
}
],
"ok" : 1
}