Javascript 如何在MongoDB中查询具有特定条件的数组
下面是我的mongodb对象示例Javascript 如何在MongoDB中查询具有特定条件的数组,javascript,mongodb,database,Javascript,Mongodb,Database,下面是我的mongodb对象示例 { "_id": ObjectId("asdklfjasdlkfjal"), "geometry": { "type": "Point", "coordinates": [ -26.62375, 152.86114 ] } }, { "_id": ObjectId("asdklfjasdlkfjal2"), "geometry"
{
"_id": ObjectId("asdklfjasdlkfjal"),
"geometry": {
"type": "Point",
"coordinates": [
-26.62375,
152.86114
]
}
},
{
"_id": ObjectId("asdklfjasdlkfjal2"),
"geometry": {
"type": "Point",
"coordinates": [
-28.62375,
123.86114
]
}
}
我已经阅读了,但它没有显示仅查询数组的第一个元素的选项
我在MongoHub
上尝试了下面的一行,但它给出了“无效运算符:$和”msg
例如,我想查询值大于-27的元素作为数组的第一个值。因此,无论第二个元素在数组中的值是多少(或者相反),都应该只提取第一个示例对象
在这里也发现了,但那是3年前的事了,所以我认为现在应该有更好的方法
感谢您阅读我的问题。与您提到的问题并不完全相同。你的“坐标”固定在两个位置,经度和纬度。您真正需要的是“点符号”:
db.collection.find({“geometry.coordinates.0”:{“$gt”:-27})
所以
0
代表第一个位置(经度),您可以使用1
代表第二个位置(纬度)。Dang!这是点符号!!我先尝试了[0],然后放弃了,哈哈。谢谢你的回答。
{"geometry.coordinates": {$and: [{$lt: -30, $gt: 151}, {$lt: -35, $gt: 151}]}}