Sau rất nhiều rắc rối, thử nghiệm trình bao mongo, cuối cùng tôi đã có giải pháp cho câu hỏi của mình.
Mã ảo:
# 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});
}
)
Vui lòng bình luận, nếu bạn có bất kỳ giải pháp nào khác cho cùng một câu hỏi.