如何编写sql查询以确定点是否在框中?

yzxexxkh  于 2021-07-26  发布在  Java
关注(0)|答案(0)|浏览(221)

我正在尝试编写一个sql查询来获取包含查询点的框的id。
我的框有以下变量:boundingbox、bottomright、id。其中boundingbox包含topleft和bottomright是点(lat/lon对)。
所以有一点,我可以在代码中做类似的事情(并尝试处理我们翻越赤道的情况)

def inBoundingBox(boundingBox.topLeft (tL): Point, boundingBox.bottomRight(bR): Point, point: Point): Boolean = {
    // in case longitude 180 is inside the box
    val isLongInRange =
      if (tL.long < bR.long) {
        p.long >= bR.long || p.long <= tL.long
      } else
        p.long >= bR.long && p.long <= tL.long

    if (point.lat >= bR.lat  &&  point.lat <= tL.lat  &&  isLongInRange) return id
}

我的问题是,如果我们有一个感兴趣的点,可以将其转换为sql查询,以避免将所有框加载到内存中,然后检查每个框吗?

暂无答案!

目前还没有任何答案,快来回答吧!

相关问题