sql >> Databasteknik >  >> NoSQL >> MongoDB

Varför den här uppdateringsfrågan bara uppdaterar en post en gång

Detta är MongoDBs standardbeteende för uppdateringar. Om du vill uppdatera flera dokument samtidigt måste du uttryckligen tillhandahålla multi flagga:

db.collection.update( criteria, objNew, upsert, multi )

så du måste använda

db.we.update({"uid":1, "status":1, "time" : {"$lte":1324403899}},
             {"$set":{status:0}}, 
             false, 
             true);

istället.

Från dokumentationen :



  1. Matcha minst N element i en array till en lista med villkor

  2. Hur skyddar man lösenordsfältet i Mongoose/MongoDB så att det inte kommer tillbaka i en fråga när jag fyller i samlingar?

  3. mongodb-insättning visar "strängar i dokument måste vara giltiga UTF-8"

  4. Range Querying in Redis - Spring Data Redis