mongodb - $ geoIntersects按重叠百分比排序

时间:2017-09-21 14:40:59

标签: mongodb polygon geospatial geo polygons

我有一个这种文件的集合:

{
  _id: ObjectId,
  type: "string", // COUNTRY, STATE, CITY
  geometry: {
    type: "MultiPolygon",
    coordinates: <coordinates>
  }
}

我想计算一下COUNTRYSTATE的每个var state = db.entity.findOne({_id:ObjectId("someStateID")}); db.entity.find({ geometry: { $geoIntersects: { $geometry: state.geometry } }, type:"COUNTRY" }); 。我试过这样做:

STATE

这样可以正常工作,但在某些情况下,某些COUNTRY的行正在触及邻居{{1}}的边界,我会收到两个或更多文档。

Here is an example image

有没有办法可以按重叠百分比对结果进行排序?或者任何类型的过滤器,以了解哪一个是确切的父母?

1 个答案:

答案 0 :(得分:0)

我发现在mongo中没有办法做到这一点,我不得不用代码来做。 Here is an easy way to solve this problem