Mongodb日期和时间不能正常工作

Mongodb日期和时间不能正常工作,mongodb,Mongodb,我是mongodb的新手。我正在编写一个查询来获取两个日期之间的文档。如果日期范围在过去几天内,则正确给出结果(如2017-01-01T00:00:00.000Z至2017-02-01T23:59:59.999Z)。如果日期范围在今天之内,则它错误地给出了记录(如2017-02-20T00:00:00.000Z到2017-02-20T16:59:59.999Z)。下面是查询 db.collection.count({“date1”:{$gte:ISODate(“2017-01-01T00:00:

我是
mongodb
的新手。我正在编写一个查询来获取两个日期之间的文档。如果日期范围在过去几天内,则正确给出结果
(如2017-01-01T00:00:00.000Z至2017-02-01T23:59:59.999Z)
。如果日期范围在今天之内,则它错误地给出了记录
(如2017-02-20T00:00:00.000Z到2017-02-20T16:59:59.999Z)
。下面是查询

db.collection.count({“date1”:{$gte:ISODate(“2017-01-01T00:00:00.000Z”)},“date1”:{$lte:ISODate(“2017-02-01T23:59:59.999Z”)});

它给出的计数为221。现在是今天:


db.collection.count({“date1”:{$gte:ISODate(“2017-02-20T00:00:00.000Z”)},“date1”:{$lte:ISODate(“2017-02-20T16:59:59.999Z”)});

它给我的计数是56。如果我在此
(2017-02-20T16:59:59.999Z)
时间之后添加了一条新记录,则相同的查询将我计数为57。另外,我尝试使用
$和
运算符,但结果相同

请帮帮我

提前感谢。

请尝试下面的代码

db.collection.count({"date1":{$gte:ISODate("2017-02-20T00:00:00.000Z") ,$lte:ISODate("2017-02-20T16:59:59.999Z")}});

您可以显示新添加的文档吗?这是UTC时间的
2017-02-20T16:59:59.999Z
今天。我想你把当地时间和UTC时间搞混了。你在哪个时区?