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

mongodb ustawia wartość pola używając if else podczas aktualizacji dokumentu

MongoDB nie obsługuje aktualizacji warunkowych, których szukasz. Jednak nadal możesz to zrobić lepiej niż przy użyciu metody wyszukiwania, pętli i zapisywania.

Przenieś sprawdzanie warunku do update selektor zapytania, a następnie wydaj dwie aktualizacje (po jednej dla każdego przypadku), używając {multi: true} zastosować aktualizację do wszystkich dopasowanych dokumentów.

// Start with the "if" update
Documents.update(
    {some_condition: true, "some field": "some condition"}, 
    {$set: {"status": "value 1"}},
    {multi: true},
    function(err, numAffected) {
        // Now do the "else" update, using $ne to select the rest of the docs
        Documents.update(
            {some_condition: true, "some field": {$ne: "some condition"}}, 
            {$set: {"status": "value 2"}},
            {multi: true},
            function(err, numAffected) {
                // All done.
            }
        )
    }
)


  1. Redis
  2.   
  3. MongoDB
  4.   
  5. Memcached
  6.   
  7. HBase
  8.   
  9. CouchDB
  1. 3 proste kroki, aby poprawić bezpieczeństwo instalacji MongoDB

  2. Jak zaprojektować schemat MongoDB dla agregatora artykułów na Twitterze?

  3. Schemat daty mangusty

  4. Mongoose findbyid() zwraca null

  5. wybierz odrębny mongodb C#