私はmongoに保存されたメタを持つ画像ギャラリーを持っています。 Webサイトのクエリが保存された画像のいくつかの数と一致するたびに、文書shown
カウンターフィールドを増分したいと思います。 findAndModify
を使用すると、1つのドキュメントで正常に動作しますが、複数のドキュメントを一致させてそれらをすべて更新するうまい方法はありません。Mongo一括検索で一致したドキュメントフィールドを一括検索して更新しますか?
これはmongoの最新バージョンで可能ですか?これを達成するためのベストプラクティスをお勧めしますか?
おかげ FLO
文書フォーマットが
{
"name" : "img name",
"description" : "some more info",
"size" : "img size in bytes",
"shown" : "count of times the image was selected by query",
"viewed" : "count of times the image was clicked"
}
非常にシンプルで、クエリは、結果をループにカーソルを使用して、文書IDを使用して示され、カウントをバンプ、シンプルな検索..ですすなわち
db.images.update(
{ _id: "xxxx" },
{ $inc: { shown: 1 } }
)
しかし、100個のドキュメントを取得しないようにして、それぞれを個別に更新する必要があります。単一のクエリで検索と更新を実行したいと考えていました。
あなたは私たちにいくつかのサンプル文書と現在の更新クエリを表示することができますか? – chridam
よろしくお願いします。ありがとう。 –