MongoDB Multiply Aggregation

时间:2014-06-13 17:28:47

标签: mongodb mongoengine

我有这样的预测:

{ "$project": {
        "answer": {
            "$cond": [
                { "$eq": [ "$up", 0 ] },
                0,
                { "$divide": [ "$up", "$total_count" ] }
            ]
        }
    }},
    { "$sort" : {
        "_id": 1
    }}

目前,{ "$divide": [ "$up", "$total_count" ] }的结果是小数(例如.75)。

如何将此结果乘以100(得到75)?

换句话说,我应该在哪里放$multiply

1 个答案:

答案 0 :(得分:2)

您希望将{ "$divide": [ "$up", "$total_count" ] }作为数组元素传递给$multiply,并且该数组的另一个元素是您想要乘以的常量。试试这个:

{ $multiply : [{"$divide": [ "$up", "$total_count" ]}, 100] }

请注意 - 如果你发布了几个样本文档来解决这样的聚合问题,这样我们可以在回复之前测试结果,否则我们必须对文档进行逆向工程以确保100%。