如何用mongodb增加多值

时间:2016-07-18 08:30:08

标签: mongodb

例如,我有3份文件, {"_id" : 1, "tags" : [1,2]}{"_id" : 1, "tags" : [2,3]}{"_id" : 1, "tags" : [1,2,3,4]}

我将它们插入mongodb之后,我希望结果是这样的 {"_id" : 1, "count" : [{tag:1, amount:2}, {tag:2, amount:3}, {tag:3, amount:2}, {tag:4, amount:1}]} 所以我可以轻松获得标签总金额。

只用一次upsert就可以做到这一点吗?

让我们再解释一下。这里_id是用户ID,标签是他使用的标签。我忽略了这里的内容,因此完整的文档应该像{"_id" : 1, "tags" :[1,2], "content": "some content"...}。我想为每个用户显示类似tagcloud的内容,因此我需要知道用户使用的标签。我不想做Aggerate $ group或者像Find这样的其他东西,只想在插入时生成这些数据,所以查询会非常简单。想法是在插入时花费更多时间,但在视图上花费更少。 希望这会使问题更加明确。

0 个答案:

没有答案