Мисля, че все пак ще трябва да направите това с две заявки. Но с помощта на $ заявка
за update
, можете да го запазите за една заявка в случай, че EID вече съществува.
db.col.update({"events.eid": 2}}, {$set: {"events.$.title: "Event 4", "events.$.start": new Date(2013, 08, 02}})
Ако върнатата стойност от това показва, че не са намерени записи, тогава можете да я вмъкнете вместо това.