sql >> Database >  >> NoSQL >> MongoDB

Update meerdere rijen voorwaardelijk

Er is geen manier om dat in één stap te doen. De bewerking die het dichtst in de buurt komt van wat u zoekt, is de saveAll functie. JS API-referentie

Hier is de beschrijving:

Voorbeeldgebruik:

Parse.Object.saveAll([object1, object2, ...], {
  success: function(list) {
    // All the objects were saved.
  },
  error: function(error) {
    // An error occurred while saving one of the objects.
  },
});

Met deze bewerking moet u nog steeds naar de objecten zoeken, ze doorlopen en de waarden bijwerken, en vervolgens saveAll aanroepen. op de lijst met bijgewerkte objecten.

Er is wat verwarring geweest rond de saveAll bewerking -- in het bijzonder hoeveel API-verzoeken het gebruikt. Dit is onzeker vanwege het feit dat Parse de manier waarop ze API-verzoeken factureren heeft veranderd en wat ooit gold voor deze bewerking is dat niet meer.

Per deze link :

Dit is niet langer waar . In april 2014 veranderde Parse hun prijsmodel in verzoeken per seconde metrisch, maar later dat jaar ontleden ook veranderde hoe batch-API-verzoeken werden geteld sinds ontwikkelaars batchbewerkingen begonnen te exploiteren.

Hier is een uittreksel van een officiële Parse-verklaring over deze kwestie :

Met behulp van de saveAll operatie van vandaag zal resulteren in 1 API-verzoek per object in de lijst, waarmee in feite save wordt aangeroepen voor elk afzonderlijk object.

Momenteel is er geen manier om te voorkomen dat u save moet aanroepen voor elk van de gewijzigde objecten. Hopelijk is dit iets dat Parse in de toekomst zal overwegen toe te voegen.




  1. MongoDB.service mislukt met resultaat exit-code

  2. MongoDB (Java) - Hoe voer ik een query uit die is opgeslagen in een javascript-bestand?

  3. Hoe veldwaarde te gebruiken als sleutelnaam in Mongodb-resultaat

  4. Toegang tot de meteorenproductiedatabase in 2016