Od $in není podporováno v agregované operaci pro pole, alternativou by bylo použít $setIsSubset . Pro více informací o tomto můžete odkazovat na tento odkaz. Souhrnný dotaz bude nyní vypadat takto
db.test.aggregate([
{
$project: {
'filtered_users': {
$filter: {
input: '$users',
as: 'user',
cond: {
$setIsSubset: [['x'], '$$user.accounts']
}
}
}
}
}])
Tento dotaz vrátí pouze prvky, které mají [x] jako podmnožinu pole v user.accounts .