我有一个类似于这样的模式:
{
'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
?