根据Array中的日期查找文档

时间:2013-07-15 13:37:41

标签: mongodb mongoose

我有一个类似的架构:

{ 
  'policy': [
    { 'date' : { type: Date } }
  ]
}

我试图根据一个范围根据第一个政策的日期找到这些。起初,当我这样的查询无声地失败时(即没有返回结果):

{
  '$and' : [
    { 'policy.0.date' : { '$gt' : <lower-bound Date> } },
    { 'policy.0.date' : { '$lt' : <higher-bound Date> } }
  ]
}

我没有收到任何错误,我知道那里有记录,所以我把它减少到寻找所有超过某个日期的人:

{ 'policy.0.date' : { $gt : startDate } }

尝试之后,我收到了这个错误:

[Error: Can't use $gt with Array.]

我甚至试图在不基于第一个元素{ 'policy.date' : { $gt : startDate } }的情况下进行查询,但也没有返回任何记录。

如何在不诉诸$where的情况下查询日期字段的任何想法?

1 个答案:

答案 0 :(得分:0)

看起来真正的DB查询正确返回,问题在于使用的mongoose版本。