【问题标题】:Get all documents and project timestamp from ObjectId in MongoDB从 MongoDB 中的 ObjectId 获取所有文档和项目时间戳
【发布时间】:2019-08-27 20:33:05
【问题描述】:

我还没有弄清楚如何投影字段列表并包含从 objectid 生成的创建日期(时间戳)。

我正在使用 MongoDB 4.0.10,我知道我可以做到这一点:

> ObjectId("5a682326bf8380e6e6584ba5").getTimestamp()
ISODate("2018-01-24T06:09:42Z")

但我不知道该怎么做:

db.users.find(
   { status: "active" },
   { "ObjectId(_id).getTimestamp()": 1 }
)

【问题讨论】:

    标签: mongodb mongodb-query


    【解决方案1】:

    你可以使用$toDate操作符

    db.collection.aggregate([
        { $match: { "status": "active" } },
        { $project: { ts: { $toDate: "$_id" } }} 
    ])
    

    Mongo Playground

    【讨论】:

    • 请注意,这需要 Mongo 4.0
    猜你喜欢
    • 2018-08-21
    • 2020-06-25
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2012-05-20
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多