sql >> データベース >  >> NoSQL >> MongoDB

$projectステージで$in演算子を使用して配列をフィルタリングします

    $in以降 配列の集約操作ではサポートされていません。代わりに、$setIsSubsetを使用することもできます。 。詳細については、このリンクを参照してください。集計クエリは次のようになります

    db.test.aggregate([
    {
        $project: {
            'filtered_users': {
                $filter: {
                    input: '$users',
                    as: 'user',
                    cond: {
                       $setIsSubset: [['x'], '$$user.accounts']           
                    }
                }
            }
        }
    }])
    

    このクエリは、[x]を持つ要素のみを返します user.accountsの配列のサブセットとして 。



    1. mongodbデフォルトポートを変更する方法

    2. データサイエンス分野におけるMongoDBの重要性の高まり

    3. MongoDBでユーザーと認証を管理する方法

    4. mongo Shellでのクエリにより、SyntaxErrorが発生します:missing:after property