返回矩形内的点列表

时间:2014-09-11 15:53:24

标签: python mysql sql geometry sqlgeography

我是地理(纬度,长度)点的数据库(MySQL),我需要从一个矩形(每个顶点有2个坐标)查询点列表。 是否有任何查询或算法可以快速解决此问题。

感谢。

1 个答案:

答案 0 :(得分:1)

假设你的纬度/长点被索引,那么任何SQL查询都会非常快

SELECT point.lat, point.long FROM point where rect1.lat <= point.lat and point.lat <= rect2.lat and rect1.long <= point.long and point.long <= rect2.long

rect1.lat/rect1.long和rect2.lat/rect2.long是西北最东部和东南部最纬近的地区。

我希望你将点数和矩形的lat / long存储为正数和负数(而不是E / WN / S) - 如果你有E / W和N / S那么查询会很多更复杂。

这也假设矩形是沿着一条纬度/经度线的整个边缘轨迹。

说实话,这个很简单,我猜我错过了什么......