MongoDB在文档中汇总值并保存

时间:2017-05-29 10:51:07

标签: mongodb

我有文件:

{
        "_id" : ObjectId("592be26fd600eb5941385396"),
        "isbn" : "978-2-1234-5680-3",
        "voices" : {
                "1" : 10,
                "2" : 25,
                "3" : 40,
                "4" : 70,
                "5" : 100
        },
        "total" : 245,
        "avg" : 3.92
}

当我添加下一个用户语音时,例如:

db.books.update({isbn: '978-2-1234-5680-3'}, {$inc: {'voices.2': 1, 'total': 1}})

我想计算平均场。我可以在一个命令中执行此操作吗?例如($ set是"伪代码"):

db.books.update({isbn: '978-2-1234-5680-3'}, {$set: {avg: ((voices.1 * 1 +
voices.2 * 2 + voices.3 * 3 + voices.4 * 4 + voices.5 * 5) / total)}}

Od也许我可以增加一个声场并在一个命令中计算平均值?

0 个答案:

没有答案