具有嵌套对象键$sum的MongoDB$组
对象结构如下:具有嵌套对象键$sum的MongoDB$组,mongodb,mongodb-php,Mongodb,Mongodb Php,对象结构如下: { "_id" : ObjectId("53434bfe234416601c8b4567"), "package" : { "id" : "3", "title" : "P3", "price" : "8.00", "votes" : "8", "created_at" : "2014-04-08 00:29:35", "updated_at" : "2014-04-0
{
"_id" : ObjectId("53434bfe234416601c8b4567"),
"package" : {
"id" : "3",
"title" : "P3",
"price" : "8.00",
"votes" : "8",
"created_at" : "2014-04-08 00:29:35",
"updated_at" : "2014-04-08 00:31:39"
},
"status" : "success",
"user_id" : "5341dd9c234416de758b4570",
"updated_at" : ISODate("2014-04-08T01:08:52.168Z"),
"created_at" : ISODate("2014-04-08T01:08:14.849Z")
}
我要做的是收集package.price
的总和,如下所示:
db.transactions.aggregate({
$group:{
_id: null,
'total': {$sum: "$package.price"}
}
})
总的值总是int 0
,结果如下:
{
"result" : [
{
"_id" : null,
"total" : 0
}
],
"ok" : 1
}
对于任何可能再次陷入这一困境的人来说,正如阿南德所说,这与该领域的类型有关。始终确保它是“可求和”类型,如int、double、float等。这可能是因为package.price
的值在文档中是一个字符串,而不是一个数字。没错,我很傻。。