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

tworzyć i aktualizować wiele dokumentów MongoDB w jednym połączeniu

Zasadniczo potrzebujesz bulkWrite operacja z upsert

const array = [
    {  someId: 1, someProp: prop1, isOpen: true  },
    {  someId: 2, someProp: prop1, isOpen: true  },
    {  someId: 5, someProp: prop1, isOpen: true  },
    {  someId: 6, someProp: prop1, isOpen: true  }
]


Model.bulkWrite(
  array.map((data) => 
    ({
      updateOne: {
        filter: { someId: data.someId },
        update: { $set: { isOpen: false, someProp: data.someProp } },
        upsert: true
      }
    })
  )
})

Daje wynik

[
  {  someId: 1, someProp: prop1, isOpen: false  },
  {  someId: 2, someProp: prop1, isOpen: false  },
  {  someId: 3, someProp: prop1, isOpen: true  },
  {  someId: 4, someProp: prop1, isOpen: true  },
  {  someId: 5, someProp: prop1, isOpen: true  },
  {  someId: 6, someProp: prop1, isOpen: true  }
]



  1. Redis
  2.   
  3. MongoDB
  4.   
  5. Memcached
  6.   
  7. HBase
  8.   
  9. CouchDB
  1. Meteor - collection.find() zawsze zwraca wszystkie pola

  2. Unikalny indeks w manguście nie działa

  3. MongoDB Analytics Series:SlamData — uruchamiaj SQL i twórz raporty bezpośrednio w MongoDB

  4. Zapytanie o zakres dla paginacji MongoDB

  5. Jaki jest pożytek z Jade lub Handlebars podczas pisania aplikacji AngularJs