Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/date/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
将数据导入mongodb时停止UTC格式化_Mongodb_Date_Timezone_Utc_Database - Fatal编程技术网

将数据导入mongodb时停止UTC格式化

将数据导入mongodb时停止UTC格式化,mongodb,date,timezone,utc,database,Mongodb,Date,Timezone,Utc,Database,我有数据库转储 { "date": {"$date": 1441927937814}} 当我使用 mongoimport 我得到这个时间,但UTC格式,我的意思是,正如我所想,我的本地时区是MSK,所以它减去3小时。我需要的是: 2015-09-11T02:32:17.814000 但我得到的是: 2015-09-10T23:32:17.814000 如何停止将时间格式化为UTC?嗯,unix时间戳(即您正在导入的数据)是以UTC表示的。此外,MongoDB BSONDate对象也始终

我有数据库转储

{ "date": {"$date": 1441927937814}}
当我使用

mongoimport
我得到这个时间,但UTC格式,我的意思是,正如我所想,我的本地时区是MSK,所以它减去3小时。我需要的是:

2015-09-11T02:32:17.814000 
但我得到的是:

2015-09-10T23:32:17.814000

如何停止将时间格式化为UTC?

嗯,unix时间戳(即您正在导入的数据)是以UTC表示的。此外,MongoDB BSON
Date
对象也始终使用UTC。这是一件好事。如果你认为你的日期应该是你的“区域设置”格式,那么你错了。如果来自不同地区的人想要查看数据怎么办?该如何向他们介绍该日期?当然不是在您的区域设置中,它需要相对于“他们”显示。这就是为什么您总是将日期存储为UTC。因此,有一个参考点需要转换。但是,如果您“导出”的时间戳值实际上代表了您的“区域设置”错误时间(并且您必须做一些工作才能做到这一点),那么最好更正该导出错误,或者根据与UTC的差异调整所有时间。最后一个是基本的日期数学。@BlakesSeven,谢谢你的回答。但我还是错过了一些东西。例如,我有时间戳1441927937814,它是从Unix时代开始的,并且没有关于时区的信息,对吗?当我为任何时间戳执行mongoimport时,它总是会转换为UTC格式?我的意思是,它将根据我的本地时区转换为UTC?您“缺少”的是没有时区信息的原因,因为这些“从历元开始的毫秒数”“是UTC时间的意思。因此,这是一个UTC时间开始,那里没有本地时区。我刚才所说的完全解释了这一点。好吧,我想我明白了。非常感谢。