在mongoose中查询多个日期范围

时间:2016-04-11 15:03:12

标签: node.js mongoose

我想在mongoose中查询多个日期范围。我还是试过了:

Model.find({
  my_date: [
    // range 1
    {
      "$gte": new Date(),
      "$lt": new Date()
    },
    {
      "$gte": new Date(),
      "$lt": new Date()
    },
    // ...
  ]
});

问题是它抛出一个错误:“对象[object object]”的“转换为日期失败”。

因此我希望mongoose将数组解释为一个输入元素而不是它们的列表。有谁知道如何解决这个问题?

谢谢: - )

最佳

1 个答案:

答案 0 :(得分:3)

你刚刚错过$or条款:

Model.find({
  $or: [
    { // range 1
      my_date: { '$gte': new Date(), '$lt': new Date() }
    },
    { // range 2
      my_date: { '$gte': new Date(), '$lt': new Date() }
    }
  ]
}, callback);