【发布时间】:2016-10-19 07:08:55
【问题描述】:
我有一个图片库,其中元数据存储在 mongo 中。每次网站查询匹配一些存储的图像时,我希望文档shown 计数器字段增加。使用findAndModify 对于单个文档可以正常工作,但我看不到匹配多个文档并全部更新它们的好方法。
最新版本的 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 个文档,然后必须遍历每个文档以单独更新。希望在单个查询中执行查找和更新。
【问题讨论】:
-
您能否向我们展示一些示例文档和您当前的更新查询?
-
好的,更多信息添加到问题中。谢谢。
标签: mongodb mongodb-query