我正在尝试在mongo集合中增加一篇文章,其中涉及维护组合主题名称和出现次数,但同时仅保留唯一的主题名称。我无法使用$ addToSet,因为count应该是每个主题的一部分,而只有主题应该是唯一的。
这是我期望更新的结构。
{
"account": "abc123",
"subjects": [
{
"subject": "s1",
"count": 4,
},
{
"subject": "s2",
"count": 2,
}
]
因此upsert查询类似于-
selector := bson.M{"accountid": AccountId}
updator := bson.M{"$set": bson.M{"accountid": AccountId},
"$addToSet": bson.M{"subjects": Subject}}
不确定如何在已添加/更新的主题的索引内向此查询添加计数。