【发布时间】:2015-06-02 21:56:45
【问题描述】:
我正在创建一个投影,并试图弄清楚如何将 mongoid 转换为投影中的时间戳。很明显,我们可以使用 .getTimestamp() 来获取 mongoid 的时间戳,但我不知道如何在投影中创建新字段。我试过这个,但失败了。
db.collection.aggregate(
[
{$unwind:
"$arrayToUnwind"
},
{$project:
{
timeOfId: "$_id".getTimeStamp()
}
},
]
)
请帮忙?!我想用这个投影制作一个 ISO 时间戳。
谢谢!
【问题讨论】:
-
这不是一个重复的问题。我的是关于聚合框架的,@chridam 发布的是关于 mongo 中的 map reduce
-
这是一个重复的问题,如果您阅读 OP 询问的上下文 我想看看如何使用 MongoDB 的聚合框架(甚至 MapReduce) 和该问题中提供的答案也适用于这个问题: 没有办法用 mongodb 的聚合框架来完成你所要求的,因为没有聚合运算符可以将 ObjectId 变成类似日期的东西(有不过是JIRA ticket)。但是,您应该能够使用 map-reduce 完成您想要的操作
标签: mongodb time collections aggregation-framework database