在MongoDB中的日期查询之间

时间:2015-02-19 21:58:15

标签: mongodb meteor

我在MongoDB中的两个日期之间尝试查询,但我没有收到任何回复,但我确实拥有正确的数据。我认为日期格式可能有误。这是对的吗?

这是我正在运行的查询

  { '$gte': Sun Feb 01 2015 02:00:00 GMT+0200 (IST),
      '$lt': Tue Mar 03 2015 02:00:00 GMT+0200 (IST) }

我的JS查询代码如下所示

query.created = {$gte:new Date(this.props.startDate), $lt:new Date(this.props.endDate)};

3 个答案:

答案 0 :(得分:4)

Mongo识别ISODate类型。它可用于制作与日期相关的常见查询(例如您正在尝试执行的查询)。

所以它应该是这样的:

{ '$gte': ISODate(01-02-2015T02:00:00Z),
  '$lt': ISODate(03-03-2015T02:00:00Z) }

请阅读更多this文档以获取更多详细信息。

另外,请查看this指向官方在线课程的链接,其中有一节介绍了您的问题。

答案 1 :(得分:1)

db.collection.find({
    created_at: {
        $gte: ISODate("2015-02-01T00:00:00.000Z"),
        $lt: ISODate("2015-03-03T00:00:00.000Z")
    }
})

答案 2 :(得分:0)

我使用twix.js并将我的集合发布到与我的日期范围条件匹配的数组中的响应。