चूंकि $in
सरणी के लिए समग्र संचालन में समर्थित नहीं है, विकल्प आपके लिए $setIsSubset
का उपयोग करने के लिए होगा . इस बारे में अधिक जानकारी के लिए आप इस लिंक को देख सकते हैं। कुल क्वेरी अब इस तरह दिखेगी
db.test.aggregate([
{
$project: {
'filtered_users': {
$filter: {
input: '$users',
as: 'user',
cond: {
$setIsSubset: [['x'], '$$user.accounts']
}
}
}
}
}])
यह क्वेरी केवल उन तत्वों को लौटाएगी जिनके पास [x]
. है user.accounts
. में सरणी के सबसेट के रूप में ।