MongoDB geoNear多坐标

MongoDB geoNear多坐标,mongodb,geolocation,mongoid,nosql,Mongodb,Geolocation,Mongoid,Nosql,我想根据结果与二维空间中多个点的接近程度对结果进行排序 我假设这可以通过对第一点进行查询,然后对第二点重新查询/检查这些结果来实现 也许下面的代码解释了我想更好地实现什么 db.runCommand({ geoNear:"places", near:[ [52.5243, 13.4063], [48.1448, 11.5580] ] }) 解决方案:如果有人感兴趣,我就是这样做到的(感谢下面的答案) 您希望上面的查询返回什么?靠近一个或另一个位置的地方?在这种情况下,您应该运行两个查询

我想根据结果与二维空间中多个点的接近程度对结果进行排序

我假设这可以通过对第一点进行查询,然后对第二点重新查询/检查这些结果来实现

也许下面的代码解释了我想更好地实现什么

db.runCommand({
  geoNear:"places",
  near:[ [52.5243, 13.4063], [48.1448, 11.5580] ]
})
解决方案:如果有人感兴趣,我就是这样做到的(感谢下面的答案)


您希望上面的查询返回什么?靠近一个或另一个位置的地方?在这种情况下,您应该运行两个查询,然后将结果合并到应用程序代码中。

MongoDB在其关于Geospacial索引的文档中有一整节

我想你要找的是一个边界框查询。这直接来自他们的代码示例

box = [[40.73083, -73.99756], [40.741404,  -73.988135]]
db.places.find({"loc" : {"$within" : {"$box" : box}}})
box = [[40.73083, -73.99756], [40.741404,  -73.988135]]
db.places.find({"loc" : {"$within" : {"$box" : box}}})