Dre*_*rew 7 datetime date utc mongodb
我已经阅读了很多关于如何在MongoDB中存储简单日期(没有时间)的内容,但我仍然找不到答案.有人说存储主题像MongoDate(日期+ utc时间),有人说存储主题像YYYYMMDD字符串,有些像其他有趣的方式.最正式的方式似乎是MongoDate,但为什么我应该将出生日期存储为UTC时间的日期?
另外,出生日期"1990-05-21"存储为"1990-05-20T23:00:00Z"(前一天):此日期不应根据时区而改变,但在世界范围内保持不变.
我仍然想知道为什么MongoDB不像其他所有数据库那样提供简单的"日期"类型.
正如评论中提到的,它几乎取决于您的最终目标。我建议您使用 MongoDate,因为它是 MongoDB 中日期的本机格式,并且对于其他开发人员来说会保持直观。原生类型支持一系列开箱即用的有用方法,例如,您可以在 Map-Reduce 作业中使用这些方法。
另外,出生日期“1990-05-21”存储为“1990-05-20T23:00:00Z”(前一天)
我认为发生这种情况只是因为您服务器上的时区是 UTC+1。您可以在保存到数据库之前手动将时区设置为 UTC,这将解决您的问题。