我在PHP中使用MongoDB ver3.4。 我有事件记录,并尝试按日期对它们进行分组。 它可以通过Robo3T在mongo shell中运行,但是我很难用PHP方式编写它。
这是我查询的外壳部分
...
{$project: { timestamp:1, d_1: { $multiply: [ "$timestamp", 1000 ]}}},
{$project: { timestamp:1, d_1:1, d_2: { $add: [new Date(0), "$d_1"] }}},
{$project: { timestamp:1, theDate: {$substr: ["$d_2", 0, 10] }}},
{$group: {_id: "$theDate", count: {$sum:1} }},
{$project: { _id:0, date:"$_id", count:1}}
我得到了漂亮的输出
/* 1 */
{
"count" : 1.0,
"date" : "2017-10-12"
}
/* 2 */
{
"count" : 7.0,
"date" : "2017-10-13"
}
...
我尝试了很多语法,但是无法解决“新日期”问题
如果我在PHP中使用'add'
,则UTCDateTime
将不起作用,并且new \MongoDate
也会失败,并返回null。
有什么想法吗?