在 MongoDB shell 中格式化日期值?
若要格式化日期值,请在 MongoDB 中使用 $dateToString。让我们使用文档创建一个集合 -
> db.demo480.insertOne({id:1,"DueDate":new ISODate("2020-01-10")});{ "acknowledged" : true, "insertedId" : ObjectId("5e821056b0f3fa88e2279098") } > db.demo480.insertOne({id:1,"DueDate":new ISODate("2017-12-21")});{ "acknowledged" : true, "insertedId" : ObjectId("5e821062b0f3fa88e2279099") } > db.demo480.insertOne({id:1,"DueDate":new ISODate("2019-10-12")});{ "acknowledged" : true, "insertedId" : ObjectId("5e82106ab0f3fa88e227909a") } > db.demo480.insertOne({id:1,"DueDate":new ISODate("2019-12-01")});{ "acknowledged" : true, "insertedId" : ObjectId("5e821078b0f3fa88e227909b") }
在集合中使用 find() 方法显示所有文档 -
> db.demo480.find();
这将产生以下输出 -
{ "_id" : ObjectId("5e821056b0f3fa88e2279098"), "id" : 1, "DueDate" : ISODate("2020-01- 10T00:00:00Z") } { "_id" : ObjectId("5e821062b0f3fa88e2279099"), "id" : 1, "DueDate" : ISODate("2017-12- 21T00:00:00Z") } { "_id" : ObjectId("5e82106ab0f3fa88e227909a"), "id" : 1, "DueDate" : ISODate("2019-10- 12T00:00:00Z") } { "_id" : ObjectId("5e821078b0f3fa88e227909b"), "id" : 1, "DueDate" : ISODate("2019-12- 01T00:00:00Z") }
以下是在 MongoDB shell 中格式化日期值的查询 -
> db.demo480.aggregate([ ... { "$match": { "id" : 1 } }, ... { "$sort": { "DueDate": -1 } }, ... { ... "$project": { ... "_id": 0, ... "DueDate": { ... "$dateToString": { ... "format": "%Y-%m-%d %H-%M", ... "date": "$DueDate" ... } ... } ... } ... } ... ])
这将产生以下输出 -
{ "DueDate" : "2020-01-10 00-00" } { "DueDate" : "2019-12-01 00-00" } { "DueDate" : "2019-10-12 00-00" } { "DueDate" : "2017-12-21 00-00" }
广告