尝试查询mongo以返回包含数组中大于某个值的值的文档。这是我的困惑......
> db.homes.findOne({},{'listing.location.latitude': 1})
{
"_id" : ObjectId("545fd08f37e6134b5796a085"),
"listing" : {
"location" : [
{
"latitude" : [
"38.68431"
]
}
]
}
}
有道理,只返回我想要的字段。但是当我在这个字段上查询时,它失败了:
> db.homes.findOne({'listing.location.latitude': {$gt: 0}})
null
我认为它与结构中的数组有关,但我不知道如何在数组中以不同方式查询它。我究竟做错了什么?目标是将此查询转移到mongoose。
答案 0 :(得分:0)
如果这是您的实际数据,则将纬度保持为字符串"38.68431"
。您需要将其保持为float以正确运行查询。