首页 > 解决方案 > 如何将时间从亚洲/加尔各答时区转换为亚洲/东京时区,然后将亚洲/东京特定日期插入 MongoDB

问题描述

我的日期格式为2020-07-08 00:00:00 Asia/Kolkata

我尝试使用 ISODate 函数,该函数采用 DateFormat 和 Timezone,但它创建的日期提前5 H 30 M,应该提前3 H 30 M。因为东京时间比印度时间早3 H 30 M。

标签: mongodbtimezoneapache-nifi

解决方案


您可以使用它$dateFromParts来操作ISODate任何所需的格式。

检查以下查询是否对您有帮助

db.test4.aggregate([
     {$project:{
         "original": "$date",
         "convertedDate": {
             '$dateFromParts': {
                 'year': {$year:{date:'$date'}},
                 'month': {$month:{date:'$date'}},
                 'day': {$dayOfMonth:{date:'$date'}},
                 'hour': {$hour:{date:'$date'}},
                 'minute': {$minute:{date:'$date'}},
                 'second': {$second:{date:'$date'}},
                 'millisecond': {$millisecond:{date:'$date'}},
                 'timezone': '-0330',
             }
         }
     }}
 ])

推荐阅读