将ISO格式的日期时间转换为mongoDB 3.6中的日期

问题描述

"dateField" : ISODate("2019-05-20T19:04:35.000Z")

如何将其转换为

"dateField" : ISODate("2019-05-20T00:00:00.000Z")

解决方法

使用$dateToString (Y-m-d)将日期转换为字符串,然后使用$dateFromString将日期转换为ISO日期,

db.collection.aggregate([
  {
    $project: {
      date: {
        $dateFromString: {
          dateString: {
            $dateToString: {
              format: "%Y-%m-%d",date: "$date"
            }
          }
        }
      }
    }
  }
])

Playground