Desde
$in não é suportado na operação agregada para array, a alternativa seria usar $setIsSubset . Para mais informações sobre isso, você pode consultar este link. A consulta agregada agora se pareceria com db.test.aggregate([
{
$project: {
'filtered_users': {
$filter: {
input: '$users',
as: 'user',
cond: {
$setIsSubset: [['x'], '$$user.accounts']
}
}
}
}
}])
Esta consulta retornará apenas elementos que tenham
[x] como um subconjunto da matriz em user.accounts .