Sinds $in
wordt niet ondersteund in de aggregatiebewerking voor array, het alternatief zou zijn dat u $setIsSubset
gebruikt . Voor meer informatie hierover kunt u deze link raadplegen. De geaggregeerde zoekopdracht ziet er nu uit als
db.test.aggregate([
{
$project: {
'filtered_users': {
$filter: {
input: '$users',
as: 'user',
cond: {
$setIsSubset: [['x'], '$$user.accounts']
}
}
}
}
}])
Deze zoekopdracht retourneert alleen elementen met [x]
als een subset van de array in user.accounts
.