0

コレクションには、ハッシュの配列である「foo」というトップレベルのフィールドを持つドキュメントがあります。すべてのドキュメントを調べて、db.mycollection.fooにサブプロパティ「name」が「bar」に等しいハッシュが含まれている場所を見つける必要があります。その一致が完了したら、「hit」というトップレベルのフィールドを値1に更新する必要があります。

したがって、コレクションを繰り返すだけで、mycollectionと呼ばれます。fooは、配列型のフィールドであり、各ハッシュにnameというフィールドがあるハッシュが含まれています。ハッシュのいずれかにname=='bar'が含まれている場合は、更新を実行する必要があります。

4

1 に答える 1

4

私はあなたが欲しいものは次のとおりだと信じています:

db.mycollection.update({"foo.name": "bar"}, {$set: {"hit": 1}}, false, true);
于 2012-04-27T17:12:03.093 に答える