MongoDB
 sql >> Baza danych >  >> NoSQL >> MongoDB

Agregacja z aktualizacją w mongoDB

Po wielu kłopotach, eksperymentowaniu z powłoką mongo w końcu znalazłem rozwiązanie mojego pytania.

Psudokod:

# 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}); 
   }
)

Proszę o komentarz, jeśli masz inne rozwiązanie tego samego pytania.



  1. Redis
  2.   
  3. MongoDB
  4.   
  5. Memcached
  6.   
  7. HBase
  8.   
  9. CouchDB
  1. MongoDB Pełne i częściowe wyszukiwanie tekstu

  2. Spring Boot i jak skonfigurować szczegóły połączenia z MongoDB?

  3. MongoDB:Liczenie, ile jest każdej z odrębnych wartości?

  4. Bezpieczne wdrożenie MongoDB na Amazon AWS

  5. MongoDB nie może uruchomić serwera:domyślny silnik pamięci masowej „wiredTiger” nie jest dostępny w tej wersji mongod