$in
以降 配列の集約操作ではサポートされていません。代わりに、$setIsSubset
を使用することもできます。 。詳細については、このリンクを参照してください。集計クエリは次のようになります
db.test.aggregate([
{
$project: {
'filtered_users': {
$filter: {
input: '$users',
as: 'user',
cond: {
$setIsSubset: [['x'], '$$user.accounts']
}
}
}
}
}])
このクエリは、[x]
を持つ要素のみを返します user.accounts
の配列のサブセットとして 。