Я экспериментирую с запросом geoNear от mongoDB. У меня есть коллекция с одним документом внутри:MongoDB geoNear запрос по старым данным возвращает неточное расстояние
{
"_id": {
"$oid": "583d169df18ef10012ae8345"
},
"location": {
"loc": [
103.7652117,
1.3150887
],
"name": "",
"_id": {
"$oid": "583d169df18ef10012ae8346"
}
},
}
Поле location.loc индексируется по 2d. Тогда я использовал запрос geoNear по команде MongoDB
{
"geoNear": "users",
"near": [103.761614, 1.3172431],
"num": 10
}
В результате расстояние вернулся из MongoDB является 0.004193433515629152 радиан, что соответствует более 20 км. Однако эти 2 координаты находятся всего в 0,5 км друг от друга. Есть ли что-то, что я сделал неправильно? Я знаю, что это должно быть очень глупо, но я просто не мог понять.
Привет, Ашутош, вы хотите сказать, что структура документа неверна? Я считаю, что mongoDB поддерживает вложенные объекты местоположения? – Bin