sql >> Database >  >> NoSQL >> MongoDB

Hoe het datumveld in de mongo-console bij te werken?

U moet een nieuwe ISODate maken object als volgt:

db.test.insert({"Time" : new ISODate("2012-01-10") });

Dit geldt zowel voor updates als voor vragen. Merk op dat uw query-syntaxis onjuist is, het zou moeten zijn

db.test.update({ criteria }, { newObj }, upsert, multi);

Als u bijvoorbeeld alle objecten wilt bijwerken, overweeg dan

db.test.update( {}, { $set : { "time" : new ISODate("2012-01-11T03:34:54Z") } }, true, true);

Merk ook op dat dit heel anders is dan

db.test.update( {}, { "time" : new ISODate("2012-01-11T03:34:54Z") }, true, false);

omdat de laatste vervangt het object, in plaats van een nieuw veld aan het bestaande document toe te voegen of het bestaande veld bij te werken. In dit voorbeeld heb ik de laatste parameter gewijzigd in false , omdat meerdere updates alleen werken met $ operators.



  1. vergelijk twee velden van hetzelfde document

  2. MongoDb-besparing veroorzaakt een fout voor privéleden van de PHP-klasse

  3. Hoe een lege associatieve array ({}) naar MongoDB te schrijven vanuit PHP

  4. Maak convertToCapped ongedaan naar een verzameling