【发布时间】:2018-01-14 22:55:35
【问题描述】:
首先我会说我知道有很多与时区相关的问题和答案。也许我只是错过了一个明显的。
我正在尝试在 Mongo 中保存一个日期范围对 - 一个起始日期和一个截止日期。我希望在时间 00:00:00:00 保存起始日期,因此如果我运行查询以查找 >=2017-08-14,所有结果都会显示。
我的问题是即使我发送时间为 00:00:00.000Z 的日期,Mongo 实际上将其保存为 -400,这似乎相当于现在的 EDT 偏移量。这导致我要么在客户端纠正很多,要么只是显示和查询不正确的数据。一旦我得到正确的日期,我想在我的查询中一起忽略时间。
这是我要发送到 MongoDB 的范围
daterange: [ { from: 2017-08-14T00:00:00.000Z, to: 2017-08-31T00:00:00.000Z } ],
这就是该范围在 Mongo 中的存储方式
from: 2017-08-13 20:00:00.000,
to: 2017-08-30 20:00:00.000
我犯了什么超级愚蠢的菜鸟错误?感谢您的帮助。
编辑:这是一个愚蠢的错误。这篇文章帮助解决了这个问题。 Query for a specific date with MongoDB and NodeJS
当我用时刻创建日期时,我应该这样做:
moment(dateString).startOf('day')
【问题讨论】: