MongoDB –解决“无法从字符串类型转换为日期类型”的问题?

要解决此问题,请在MongoDB中使用$dateFromString aggregate()。在$dateFromString转换日期/时间字符串的Date对象。

让我们创建一个包含文档的集合-

> db.demo619.insertOne({"DueDate":"10-10-2020"});

{

   "acknowledged" : true,

   "insertedId" : ObjectId("5e99d7846c954c74be91e69e")

}

> db.demo619.insertOne({"DueDate":"12-01-2019"});

{

   "acknowledged" : true,

   "insertedId" : ObjectId("5e99d7996c954c74be91e69f")

}

> db.demo619.insertOne({"DueDate":"28-10-2010"});

{

   "acknowledged" : true,

   "insertedId" : ObjectId("5e99d7ab6c954c74be91e6a0")

}

find()方法的帮助下显示集合中的所有文档-

> db.demo619.find();

这将产生以下输出-

{ "_id" : ObjectId("5e99d7846c954c74be91e69e"), "DueDate" : "10-10-2020" }

{ "_id" : ObjectId("5e99d7996c954c74be91e69f"), "DueDate" : "12-01-2019" }

{ "_id" : ObjectId("5e99d7ab6c954c74be91e6a0"), "DueDate" : "28-10-2010" }

以下是将ty日期/时间字符串转换为日期对象的查询-

> db.demo619.aggregate( [ {

...    $project: {

...       DueDate: {

...          $dateFromString: {

...             dateString: '$DueDate',

...             timezone: 'America/New_York'

...          }

...       }

...    }

... } ] )

这将产生以下输出-

{ "_id" : ObjectId("5e99d7846c954c74be91e69e"), "DueDate" : ISODate("2020-10-10T04:00:00Z") }

{ "_id" : ObjectId("5e99d7996c954c74be91e69f"), "DueDate" : ISODate("2019-01-12T05:00:00Z") }

{ "_id" : ObjectId("5e99d7ab6c954c74be91e6a0"), "DueDate" : ISODate("2010-10-28T04:00:00Z") }

以上是 MongoDB –解决“无法从字符串类型转换为日期类型”的问题? 的全部内容, 来源链接: utcz.com/z/352596.html

回到顶部