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

mongoDBでの更新による集約

    多くのトラブルの後、mongo shellを実験して、ようやく私の質問に対する解決策を見つけました。

    疑似コード:

    # To get the list of customer whose score is greater than 2000
    cust_to_clear=db.col.aggregate(
        {$match:{$or:[{status:'A'},{status:'B'}]}},
        {$group:{_id:'$cust_id',total:{$sum:'$score'}}},
        {$match:{total:{$gt:500}}})
    
    # To loop through the result fetched from above code and update the clear
    cust_to_clear.result.forEach
    (
       function(x)
       { 
         db.col.update({cust_id:x._id},{$set:{clear:'Yes'}},{multi:true}); 
       }
    )
    

    同じ質問に対して別の解決策がある場合は、コメントしてください。



    1. サブドメインでredisおよびパスポートとセッションを共有しますか?

    2. Predisは「サーバーから行を読み取っているときにエラーが発生しました」

    3. mongodbでエクスプレスとパスポートを使用したnodejsのシンプルなログインページ

    4. MongoObjectIDから作成日を抽出するにはどうすればよいですか