MongoDB
MongoDB シェル経由で実行できる集計クエリがあります。PHP
ただし、公式のMongo ドライバー (http://php.net/manual/en/mongocollection.aggregate.php)で動作するように変換しようとしています。
以下は、未処理の MongoDB クエリです。
db.executions.aggregate( [
{ $project : { day : { $dayOfYear : "$executed" } } },
{ $group : { _id : { day : "$day" }, n : { $sum : 1 } } } ,
{ $sort : { _id : -1 } } ,
{ $limit : 14 }
] )
Mongo ドライバーを使用する際の私の試み(動作していません)は次のとおりです。PHP
$result = $c->aggregate(array(
'$project' => array(
'day' => array('$dayOfYear' => '$executed')
),
'$group' => array(
'_id' => array('day' => '$day'),
'n' => array('$sum' => 1)
),
'$sort' => array(
'_id' => 1
),
'$limit' => 14
));
上記の PHP コードのエラーは次のとおりです。
{"errmsg":"exception: wrong type for field (pipeline) 3 != 4","code":13111,"ok":0}
何か案は?ありがとう。