Mongodb日期与时间不正常

时间:2017-02-20 14:49:15

标签: mongodb

我是mongodb的新手。我正在编写一个查询来随时间在两个日期之间获取文档。如果日期范围在过去几天内下降,那么正确地给出结果(like 2017-01-01T00:00:00.000Z to 2017-02-01T23:59:59.999Z)。如果日期范围在今天之内,那么它会错误地给出记录(like 2017-02-20T00:00:00.000Z to 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 。此外,我尝试使用$and运算符但结果相同。

请帮助我。

提前致谢。

1 个答案:

答案 0 :(得分:1)

尝试以下代码。

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