我无法获得ammount
列的总和。它返回null
。
试图按日期分组。
Array
(
[_id] => MongoId Object
(
[$id] => 5500a655642c87d663b7acd9
)
[0] => 1
[id] => 1
[1] => 5
[site_id] => 5
[2] => 7
[ammount] => 7
[3] => 2
[status] => 2
[4] => 2012-07-04
[date] => 2012-07-04
)
我的PHP代码就在这里。
$outt = $db->command (
array(
"aggregate" => "tests",
"pipeline" =>
array(
array( '$match' => array('$and' => array(
array( 'date' => $date ),
array('$or'=>$sites)))),
array(
'$group' => array(
'_id' => '$date',
'sum' => array('$sum' => '$ammount')
)
)
)
)
);
如果我将$ammount
作为_id
,则会ammount
显示sum
。
(P.S。列名$ammount
是正确的)
答案 0 :(得分:0)
MongoDB无法返回sum因为ammount存储为字符串。 我将它转换为双倍并且有效。
Mongo没有为它返回任何错误